您的位置:首页 > 其它

水题堆1.B 人见人爱A-B

2018-02-13 15:24 169 查看
#include <stdio.h>
#include <stdlib.h>
void quicksort(int s[],int n,
4000
int be,int end)
{
int i,j,t;
if(be<end){
i=be+1;
j=end;
while(i<j){
if(s[i]>s[be]){
t=s[j];
s[j]=s[i];
s[i]=t;
j--;
}
else i++;
}
if(s[i]>=s[be])i--;
t=s[be];
s[be]=s[i];
s[i]=t;
quicksort(s,n,be,i);
quicksort(s,n,j,end);
}
}
int main()
{
int n,m,i,j;
while(1){
scanf("%d%d",&n,&m);
if(n==0&&m==0)break;
int a[101],b[101],c[101]={0},k=0,q=0;
for(i=0;i<=n-1;i++)scanf("%d",&a[i]);
for(i=0;i<=m-1;i++)scanf("%d",&b[i]);
quicksort(a,n,0,n-1);
quicksort(b,m,0,m-1);
for(i=0;i<=n-1;i++){
for(j=k;j<=m-1;j++){
if(a[i]==b[j]){
c[i]=-1;
q++;
}
else if(a[i]<b[j]){
k=j;
break;
}
}
}
if(q==n)printf("NULL");
else{
for(i=0;i<=n-1;i++){
if(c[i]==0)printf("%d ",a[i]);
}
}
printf("\n");
}
return 0;
}
才发现数据很小,如果数据比较大的话先排序会比较好
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: