题目描述
灵梦拥有n个数,这n个数分别是a1,a2,…,an。
有一天她做了一个梦,在梦里她的这n个数有部分被魔理沙偷走了,只剩下了m个数b1,b2,…,bm。她想知道有哪些数字被魔理沙偷走了!
灵梦告诉你a和b的值,你需要从小到大的告诉灵梦,哪些数字不见了!
输入格式(number.in)
第一行一个数n,第二行n个数ai,表示一开始的数字。
第三行一个数m,第四行m个数bi,表示剩下的数字。
输出格式(number.out)
一行n-m个数,从小到大输出所有被偷走的数字。
参考题解在这里:
1 #include <cmath> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <iostream> 5 #include <algorithm> 6 using namespace std; 7 int n,m,i,X,a[100005],b[100005]; 8 int cmp(int i,int j) {return i<j;} 9 int main() 10 { 11 freopen("number.in","r",stdin); 12 freopen("number.out","w",stdout); 13 scanf("%d",&n); 14 for (i=1; i<=n; i++) scanf("%d",&a[i]); 15 scanf("%d",&m); 16 for (i=1; i<=m; i++) scanf("%d",&b[i]); 17 sort(a+1,a+n+1,cmp); 18 sort(b+1,b+m+1,cmp); X=1; 19 for (i=1; i<=n; i++) 20 { 21 if (a[i]==b[X]) X++; else printf("%d ",a[i]); 22 } 23 return 0; 24 25 }
集训第一天的题目呢……