题目:http://acm.hdu.edu.cn/showproblem.php?pid=2034
#include <stdio.h>
typedef struct{
int num,flag;
}aa;
aa a[110],b;
int n,m,count;
void deal(int num)
{
for(int i=0;i<n;i++)
if(a[i].num==num) {a[i].flag=0;count--;}
}
void sort()
{
int i,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i].flag==1&&a[j].flag==1&&a[i].num>a[j].num){
b=a[i];
a[i]=a[j];
a[j]=b;
}
}
int main()
{
int number;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n==0&&m==0) break;
for(int i=0;i<n;i++)
{
scanf("%d",&a[i].num);
a[i].flag=1;
}
count=n;
for(int j=0;j<m;j++)
{
scanf("%d",&number);
deal(number);
}
if(count==0) printf("NULL\n");
else {
sort();
for(int i=0;i<=n;i++)
if(a[i].flag==1) printf("%d ",a[i].num);
printf("\n");
}
}
return 0;
}