hdu1412
来源:互联网 发布:制作app软件要多少钱 编辑:程序博客网 时间:2024/05/16 00:51
stl中set的运用,又学到了一个知识点
/* * ===================================================================================== * * Filename: hd1412.c * * Description: 求两个集合的并集,并顺序输出 * * Version: 1.0 * Created: 2013年09月26日 23时37分20秒 * Revision: none * Compiler: gcc * * Author: Ni WenXian (hello world~ iam coming), niwenxianq@qq.com * Organization: AMS/ICT * * ===================================================================================== */ #include <iostream> #include <set> using namespace std; int main(){int m,n,x;set<int> s;set<int>::iterator it;while(cin>>m>>n){s.clear();while(m--){cin>>x;s.insert(x);}while(n--){cin>>x;s.insert(x);}for(it=s.begin();it!=s.end();it++){if(it==s.begin()) cout<<*it;else cout<<" "<<*it;}cout<<endl;}return 0;}
如果不用set,自己写起来还真是麻烦. 上面方法还是借用别人的思想
看来处理这类问题,首先想到的应该是stl
方法2:
1.先把所有的数据存储到一个数组中, a[200000]
2.排序a, 不用去重,这样太麻烦,输出的时候作控制就可以了
3. 输出, 如果相同的值,就只输一个
这个还是要用到排序算法
#include <algorithm>
sort(a, a+m+n);
方法3.
直接用
set_intersection(),set_union()就行了
- hdu1412
- HDU1412
- hdu1412
- HDU1412
- hdu1412
- HDU1412-set
- hdu1412 ({a}+{b})
- hdu1412{A} + {B}
- HDU1412:{A} + {B}
- HDU1412:{A} + {B}
- hdu1412 搬寝室
- hdu1412 ({a}+{b})
- hdu1412 {A} + {B}
- HDU1412 {A} + {B}
- HDU1412-{A} + {B}
- HDU1412{A} + {B}
- hdu1412 {A}+{B}
- hdu1412——{A} + {B}
- 我收藏的链接
- C++ Base64加密解密
- Linux中gdb 查看core堆栈信息
- opencv提取ROI区域
- 溢出和越界的区别
- hdu1412
- 提高自己的执行力
- linux系统文件处理命令
- 读取xml 文件
- cacti不能获取数据或者显示图经常碰到的问题
- oracle数据库 总结
- 家乡的互联网
- 抓log
- ubuntu13.04下安装win7