1 2 1 2 3 1 2 1 1 2
1 2 3 1 2
代码:
#include<stdio.h> int main() { int n,m; int i,j,k,t=0,tem; int a[11111]; int b[11111]; int c[22222]; while(scanf("%d%d",&n,&m)!=EOF){ for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<m;i++) { scanf("%d",&b[i]); } t=0; for(i=0;i<n;i++) { k=0; for(j=0;j<m;j++) { if(a[i]!=b[j]) { k++; } if(k==m) { c[t]=a[i]; t++; } } } for(i=t,j=0;i<t+m;i++) { c[i]=b[j]; j++; } for(i=0;i<t+m;i++) for(j=0;j<t+m;j++) { if(c[i]<c[j]) { tem=c[j]; c[j]=c[i]; c[i]=tem; } } for(i=0;i<t+m;i++) printf(i==0? "%d":" %d",c[i]); printf("\n"); } return 0; }
分析:才学C不久,看到这个题的时候只能用这种本方法去求啊,第一次a、b数组大小是10000的时候居然没AC,第二次改成11111就好了,好吧我张记性了下回认可多一倍我也不带让你少滴。