wikioi天梯之1075 明明的随机数
来源:互联网 发布:项目管控软件 编辑:程序博客网 时间:2024/05/17 03:44
题目
直接做则有下面的
#include <iostream>#include<algorithm>using namespace std;int main(){ int N,i,j; int num[101],num1[101]; cin>>N; for(int i = 0; i < N;i++) cin>>num[i]; sort(num,num + N); num1[0] = num[0]; for(i = 1, j = 1;i < N;i++) { if(num[i] != num[i-1]) { num1[j] =num[i]; j++; } } cout<<j<<endl; for(i = 0; i < j;i++) cout<<num1[i]<<" "; return 0;}看到有人用桶排序来做 来感受一下桶排序吧
#include<iostream>using namespace std;bool a[1001];//用数组来当桶 感觉有点像hash 在这声明一个全局数组 默认值全为 0 可以输出来验证//貌似全局变量才会这样用0初始化数组 写到main函数里面的话就没有自动初始化了int main(){ int N,tem,count = 0; cin>>N; for(int i = 0; i < N; i++) { cin>>tem; if(a[tem] == false) { a[tem] = true; count++; } } cout<<count<<endl; for(int i = 0; i < 1001; i++) if(a[i])cout<<i<<" ";}
数组自动有序 下标值就是原来的数字
另外我尝试用了现在还不熟悉的map来做 但是后面两种方法的运行时间没有第一个快 第一个是2ms 其他的都是4ms
可能空间占用太了吧
#include<iostream>#include<map>using namespace std;int main(){ map<int,int> num; int N,tem,count = 0; cin>>N; for(int i = 0;i < N;i++) { cin>>tem; if(num[tem] == 0) { count++; num[tem] = 1; } } cout<<count<<endl; for(map <int, int>::iterator k = num.begin();k != num.end();k++) { if(k->second)cout<<k->first<<" "; } return 0;}
0 0
- wikioi天梯之1075 明明的随机数
- Wikioi 天梯 明明的随机数(1075)
- WikiOI 1075 明明的随机数
- 天梯-明明的随机数
- wikioi p1075 明明的随机数
- wikioi明明的随机数pascal
- codevs 天梯 明明的随机数
- codeves天梯 明明的随机数
- codeves天梯 明明的随机数
- [WikiOI] 2.1.1 明明的随机数
- 1075 明明的随机数
- CODEVS 1075 明明的随机数
- 【codevs 1075】明明的随机数
- 【codevs 1075】明明的随机数
- wikioi天梯之1011 数的计算之递推
- 明明的随机数之机试
- wikioi天梯之3143 二叉树的序遍历
- 1075: 【明明的随机数】解题报告
- 数字信号处理中求频谱图与滤除噪声的问题
- hdu1018(解题报告)
- apue和unp的学习之旅06——简单引出进程和信号的学习
- meta 之 viewport
- delphi数据类型表
- wikioi天梯之1075 明明的随机数
- Android eye detection updated for OpenCV 2.4.6
- 又是一年WWDC,暨回顾去年之旅——Part I
- hdu 1693 插头DP
- 字符串反转
- C++:Initialization, assignment & copying有什么不同
- 图像处理与计算机视觉的经典书籍
- C++:STL标准入门汇总
- java 中的NaN