您的位置:首页 > 其它

【暑期基础2】I HDU 2034 人见人爱A-B

2015-08-06 11:03 288 查看

题意

两个集合,输出属于集合 A 但不属于集合 B 的元素,结果按从小到大的顺序输出。如果没有这样的元素,则输出“NULL”。

思路

先对 A 数组排序,然后逐个输出元素,输出时进行判断是否属于集合 B。

AC 代码 *

#include <stdio.h>

int main() {
int n, m;
int a[105], b[105];
int i, j, min, temp, flag;
while ( scanf("%d%d", &n, &m) && ( n || m ) ) {
for( i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
for( j = 0; j < m; j++) {
scanf("%d", &b[j]);
}
for ( i = 0; i < n; i++) {
for ( j = i + 1; j < n; j++) {
if ( a[i] > a[j] ) {
temp = a[j];
a[j] = a[i];
a[i] = temp;
}
}
}

flag = 0;
for ( i = 0; i < n; i++) {
temp = 0;
for ( j = 0; j < m; j++){
if ( a[i] == b[j] ) {
temp = 1;
break;
}
}
if (!temp) {
printf("%d ", a[i]);
flag = 1;
}
}

printf(flag ? "\n" : "NULL\n") ;
}

return 0;
}


* 注:在 HUST 的 Virtual Judge 上测试 AC
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: