35、人见人爱A-B
https://acm.hdu.edu.cn/showproblem.php?pid=2034
A-B求的是两个集合的差,就是做集合的减法运算。(集合就是同一个集合中不会有两个相同的元素)
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
Inputcopy | Outputcopy |
---|---|
3 3 1 2 3 1 4 7 3 7 2 5 8 2 3 4 5 6 7 8 0 0 |
2 3 NULL |
要点:
集合相减问题,就是将存在于a数组,但是不存在于b数组的元素输出。
注意从小到大输出,需要排序。
#include <stdio.h>
int main(void)
{int n,m;int a[105],b[105];int i,j,k,t;while(scanf("%d%d",&n,&m) != EOF){if(n == 0&&m == 0)break;for(i = 0;i < n;i++){scanf("%d",&a[i]);}for(i = 0;i < m;i++){scanf("%d",&b[i]);}//对a数组排序for(i = 1;i < n;i++){for(j = 0;j < n-i;j++){if(a[j] > a[j + 1]){t = a[j];a[j] = a[j + 1];a[j + 1] = t;}}}//对b数组排序for(i = 1;i < m;i++){for(j = 0;j < m -i;j++){if(b[j] > b[j + 1]){t = b[j];b[j] = b[j + 1];b[j + 1] = t;}}}for(i = 0,j = 0;i < n&&j < m;){if(a[i] > b[j])j++;//保持将取值较小的输出往后走else if(a[i] < b[j])i++;else{//当发现a数组与b数组的重复元素,将该元素弹出,并将n的值减小一for(k = i;k < n - 1;k++)a[k] = a[k + 1];n--;}}if(n == 0)//如果a数组中元素b中均存在printf("NULL\n");else{for(i = 0;i < n;i++){printf("%d ",a[i]);}puts("");//多组输入,注意换行}}return 0;
}
35、人见人爱A-B相关推荐
- 【HDU100】杭电入门一百道 C++ 全 题 解
" Ctrl AC!一起 AC!" 题目集合链接:HDU2000-2099http://acm.hdu.edu.cn/listproblem.php?vol=11 前言 1. 好像 ...
- HDU 2034 人见人爱A-B
人见人爱A-B Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- HDU 2035.人见人爱A^B-快速幂
人见人爱A^B Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- 是非人生 — 一个菜鸟程序员的5年职场路 第35节
是非人生 - 一个菜鸟程序员的5年职场路第35节作者: 花8 天涯IT: http://cache.tianya.cn/publicforum/content/itinfo/1/77229.shtml ...
- php网课资源百度云盘_安全中国PHP网站开发工程师就业指导班 35课 附课件、源码,全套视频教程学习资料通过百度云网盘下载...
链接失效请联系微信 ZA_summer,有需要某课网某某课堂精品付费课的朋友也可以联系我.ps:凡在本店**过教程的同学即可加入技术交流群,群内不定期推送最新it教程. 第1课初识php及其php的开 ...
- Linux命令find的35个实例
注:本文内容参考<35 Practical Examples of Linux Find Command> 网址:http://www.tecmint.com/35-practical-e ...
- 3分钟内快速部署MySQL5.6.35数据库实践
3分钟内快速部署MySQL5.6.35数据库实践 1.下载软件 wget -q http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-g ...
- grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)
2019独角兽企业重金招聘Python工程师标准>>> 1. 简单介绍 在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前被认为最高效的字符串搜索算法,它由Bob ...
- 35岁以前成功的12条黄金法则(1)
第一章:一个目标 一艘没有航行目标的船,任何方向的风都是逆风. 1.你为什么是穷人,第一点就是你没有立下成为富人的目标. 2.你的人生核心目标是什么?杰出人士与平庸之辈的根本差别并不是天赋.机遇,而在 ...
最新文章
- 看完这些细分领域别说小程序代理创业没有机会
- UA OPTI570 量子力学17 创生算符与湮灭算符
- LibSVM 在matlab中的使用
- call和apply和bind的区别
- Fast R-CNN 个人理解
- JS factory
- xodo上的笔记不见了_一起来“终极笔记名场面批发市场”进货吗
- Scala的设计目标——Martin Odersky访谈(二)
- 试分别简述udp和tcp的特点_技术帖:污水处理中曝气设备的分类及特点小结
- logback实现日志按天和大小切分
- 【Datapump】expdp和impdp中parallel参数解释
- 社交产品方法论(八):数据分析的二三事
- 微软承认iPad牛逼,正计划为其定做Office?
- HTML制作简易个人简历(表单)
- 计算机操作系统的功能有哪些,操作系统的基本功能是什么
- PDF格式转JPG格式怎么转?掌握方法其实很简单
- 如何找到刑事案件的辩点(律师角度)
- 360与腾讯之争——顾客有可能成为上帝
- 《青玉案·元夕》 辛弃疾
- java编写平行四边形的代码_Java代码编写四边形