寫在前面:本人能力有限,如下代碼徹底爲本人本身A出,若有不足之處還請廣大網友指點。ios
牛客網數組
輸入有多組數據。 每組輸入n,而後輸入n個整數,再輸入m,而後再輸入m個整數(1<=m,n<=100)。
若是在n個數組中輸出YES不然輸出NO。
5 1 5 2 4 3 3 2 5 6
YES YES NO
#include<stdio.h> int main(){ int n,m; while(scanf("%d",&n)!=EOF){ int buf1[n]; for(int i=0;i<n;i++){ scanf("%d",&buf1[i]); } scanf("%d",&m); int buf2[m]; for(int i=0;i<m ;i++){ scanf("%d",&buf2[i]); } for(int i=0;i<m;i++){ for(int j=0;j<n;j++){ if(buf2[i]==buf1[j]){ printf("YES\n"); break; } if(j==n-1){ printf("NO\n"); } } } } return 0; }
牛客網spa
輸入有多組數據。 每組輸入n,而後輸入n個整數(1<=n<=1000),再輸入k。
輸出第k小的整數。
6 2 1 3 5 2 2 33d
3
#include<stdio.h> #include<algorithm> #include<cstring> using namespace std; bool mark[10001]; int num[10001]; int main(){ int n; while(scanf("%d",&n)!=EOF){ memset(mark,0,sizeof(mark)); int size=0; for(int i=0;i<n;i++){ int t; scanf("%d",&t); if(mark[t]==false){ mark[t]=true; num[size++]=t; } } sort(num,num+size); int m; scanf("%d",&m); printf("%d\n",num[m-1]); } return 0; }
牛客網code
輸入有多組數據。 每組輸入兩個字符串(字符串大小不超過100)a,b。a字符串表明手中牌,b字符串表明出的牌。
壓過輸出YES 不然NO。
12233445566677 33
YES
#include<stdio.h> #include<iostream> #include<string> using namespace std; int buf[10]; int main(){ string s1, cp; cin>>s1; cin>>cp; for(int i=0;i<10;i++) buf[i]=0; for(int i=0;i<s1.size();i++){ int t=s1[i]-'0'; buf[t]++; } bool t=false; switch (cp.size()){ case 1:{ for(int i=0;i<s1.size();i++){ if(s1[i]>cp[0]){ printf("YES\n"); t=true; break; } } break; } case 2:{ for(int i=2;i<10;i++){ if(cp[0]<i+'0'&&buf[i]>=2){ printf("YES\n"); t=true; break; } } break; } case 3:{ for(int i=2;i<10;i++){ if(cp[0]<i+'0'&&buf[i]>=3){ printf("YES\n"); t=true; break; } } break; } case 4:{ for(int i=2;i<10;i++){ if(cp[0]<i+'0'&&buf[i]>=4){ printf("YES\n"); t=true; break; } } break; } case 5:{ for(int i=2;i<6;i++){ if(cp[0]<i+'0'&&buf[i]>=1&&buf[i+1]>=1&&buf[i+2]>=1&&buf[i+3]>=1&&buf[i+4]>=1){ printf("YES\n"); t=true; break; } } break; } } if(t==false) printf("NO\n"); return 0; }
牛客網blog
輸入有多組數據。 每組輸入一個n(1<=n<=1000),而後將樹中的這n個節點依次輸入,再輸入一個d表明深度。
輸出該樹中第d層得全部節點,節點間用空格隔開,最後一個節點後沒有空格。
4 1 2 3 4 2
2 3
#include<stdio.h> #include<cstring> int buf1[1001]; int fun(int x,int q){ if(q==0)return 1; int ans=1; for(int i=0;i<q;i++){ ans*=x; } return ans; } int main(){ int n; while(scanf("%d",&n)!=EOF){ memset(buf1,0,sizeof(buf1)); for(int i=0;i<n;i++){ scanf("%d",&buf1[i]); } int d,t; scanf("%d",&d); int i=fun(2,d-1)-1; t=fun(2,d)-1; for(;i<t&&buf1[i]!=0;i++){ printf("%d",buf1[i]); if(i+1<=t&&buf1[i+1]!=0) printf(" "); } if(n<i)printf("EMPTY"); printf("\n"); } return 0; }