http://acm.hdu.edu.cn/showproblem.php?pid=2034

人见人爱A-B

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 43093    Accepted Submission(s): 12090

Problem Description
參加过上个月月赛的同学一定还记得当中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集。今天我们这个A-B求的是两个集合的差,就是做集合的减法运算。(当然,大家都知道集合的定义。就是同一个集合中不会有两个同样的元素,这里还是提醒大家一下)



呵呵,非常easy吧?
 
Input
每组输入数据占1行,每行数据的開始是2个整数n(0<=n<=100)和m(0<=m<=100),分别表示集合A和集合B的元素个数。然后紧跟着n+m个元素,前面n个元素属于集合A,其余的属于集合B. 每一个元素为不超出int范围的整数,元素之间有一个空格隔开.

假设n=0而且m=0表示输入的结束。不做处理。
 
Output
针对每组数据输出一行数据,表示A-B的结果,假设结果为空集合。则输出“NULL”,否则从小到大输出结果,为了简化问题,每一个元素后面跟一个空格.
 
Sample Input
3 3 1 2 3 1 4 7
3 7 2 5 8 2 3 4 5 6 7 8
0 0
 
Sample Output
2 3
NULL

简单题,细心一点就能够了。

AC代码:

<span style="font-size:24px;">#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std; int cmp(int a,int b)
{
return a<b;
} int main()
{
int a[101],b[101],c[101],m,n,i,j,k;
while(~scanf("%d%d",&m,&n))
{
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
if(m==0&&n==0)break;
for(i=0;i<m;i++)
scanf("%d",&a[i]);
for(j=0;j<n;j++)
scanf("%d",&b[j]);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(a[i]==b[j])
a[i]=0;
continue;
}
}
k=0;
for(i=0;i<m;i++)
{
if(a[i]!=0)
{
c[k]=a[i];
k++;
}
}
sort(c,c+k,cmp);
if(k==0)
printf("NULL\n");
else
{
for(i=0;i<k;i++)
printf("%d ",c[i]);
printf("\n");
} }
return 0;
}</span>


杭电 2034 人见人爱A-B的更多相关文章

  1. 杭电2034——人见人爱A-B

    #include <stdio.h> #include <algorithm> using namespace std; int main () { int a[110],b[ ...

  2. 杭电2033 人见人爱A+B

    人见人爱A+B Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  3. 杭电 2035 人见人爱A^B【快速幂取模】

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2035 解题思路:这一题数据不大,可以用同余来做,也可以用快速幂来做 反思:定义成 #include&l ...

  4. 杭电 2035 人见人爱A^B【同余】

    #include<stdio.h> int main() { int a,b; int s; int i; while(scanf("%d %d",&a,&am ...

  5. 杭电oj_2035——人见人爱A^B(java实现)

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2035 思路:(网上学来的,偏向数学的不咋懂/捂脸)每次乘法的时候都取后三位(可能有些含糊,直接看代码吧 ...

  6. 杭电oj2028、2034、2035、2041、2043-2046

    2028  Lowest Common Multiple Plus #include<stdio.h> int gcd(int a,int b){ int temp,temp1; if(a ...

  7. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  8. 杭电ACM题单

    杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...

  9. 杭电acm习题分类

    专注于C语言编程 C Programming Practice Problems (Programming Challenges) 杭电ACM题目分类 基础题:1000.1001.1004.1005. ...

随机推荐

  1. Oracle 课程八之性能优化之10053事件

    一. 10053事件 当一个SQL出现性能问题的时候,可以使用SQL_TRACE 或者 10046事件来跟踪SQL. 通过生成的trace来了解SQL的执行过程. 我们在查看一条SQL的执行计划的时候 ...

  2. 新浪使用Redis

    新浪微博的工程师们曾经在多个公开场合都讲到过,微博平台当前在使用并维护着可能是世界上最大的Redis集群,其中最大的一个业务,单个业务使用了超过 10T 的内存,这里说的就是微博关系服务. 风起 20 ...

  3. C# 委托总结

    总结 委托的本质: 委托是一种特殊的数据类型,它表示某种特定类型的函数,并且可以表示多个函数,将这些函数串联起来.使用委托就好像函数调用一样. 委托实质上是一个类,编译器会根据关键字delegate自 ...

  4. HTTP协议中的长连接和短连接(keep-alive状态)

    什么是长连接 HTTP1.1规定了默认保持长连接(HTTP persistent connection ,也有翻译为持久连接),数据传输完成了保持TCP连接不断开(不发RST包.不四次握手),等待在同 ...

  5. Dropping water balloons

    题意: 给你k个水球n层楼(n很大) 现在做实验在楼上向下丢水球,若水球没破可以重新丢,求把所有水球弄破的最小试验次数. 分析: 开始完全没思路啊.从正面求没法做不会表示状态,做实验是只能从第一层,一 ...

  6. linux常用命令之--文件打包与压缩命令

    linux的文件打包与压缩命令 1.压缩与解压命令 compress:用于压缩指定的文件,后缀为.z 其命令格式如下: compress [-d] 文件名 常用参数: -d:解压被压缩的文件(.z为后 ...

  7. STL六大组件之——仿函数偷窥

    仿函数(functor),就是使一个类或类模板的使用看上去象一个函数.其实现就是类或类模板中对operator()进行重载,这个类或类模板就有了类似函数的行为.仿函数是智能型函数就好比智能指针的行为像 ...

  8. [转]使用CSS3 Grid布局实现内容优先

    使用CSS3 Grid布局实现内容优先  http://www.w3cplus.com/css3/css3-grid-layout-module.html 本文由大漠根据Rachel Andrew的& ...

  9. 找不到或无法加载已注册的 .Net Framework Data Provide

    在使用数据库的工程模式时,运行到下面代码第四行时,出现“找不到或无法加载已注册的 .Net Framework Data Provide”的错误! private DbProviderFactory ...

  10. jira部署,主机迁移,数据库迁移,jira

    1,linux环境下快速部署; wget http://wpc.29c4.edgecastcdn.net/8029C4/downloads/software/jira/downloads/atlass ...