wordpress托管网站,营销型网站建设哪家公司好,网站设计与程序方向,全国文明城市创建工作【问题描述】 某次科研调查时得到了n个自然数#xff0c;每个数均不超过1500000000(1.5*10^9)。已知不相同的数不超过10000个#xff0c;现在需要统计这些自然数各自出现的次数#xff0c;并按照自然数从小到大的顺序输出统计结果。 【输入格式】 输入文件pcount.in包… 【问题描述】 某次科研调查时得到了n个自然数每个数均不超过1500000000(1.5*10^9)。已知不相同的数不超过10000个现在需要统计这些自然数各自出现的次数并按照自然数从小到大的顺序输出统计结果。 【输入格式】 输入文件pcount.in包含n1行第1行是整数n表示自然数的个数。第2--n1行每行一个自然数。 【输出格式】 输出文件pcount.out包含m行(m为n个自然数中不相同数的个数)按照自然数从小到大的顺序输出。每行输出两个整数分别是自然数和该数出现的次数其问用一个空格隔开。 【输入输出样例】 输入 8242451002100 输出2 34 25 1100 2 【限制】 40%的数据满足1n100080%的数据满足1n50000100%的数据满足1n200000每个数均不超过1500 000 000(1.5*10^9) 这个题我犯了一个超级超级超级zz的错误 mmp 我觉得肯定特别高级 我刚开始的思路是这样的 用一个bool数组记录是否出现过 用两个数组一个记录数字一个记录出现次数 然后排序输出 我还考虑去重函数了呢 mmp 全都超出空间限制了 代码是长这样的 1 #includeiostream2 #includecstdio3 #includecmath4 #includealgorithm5 #includecstring6 using namespace std;7 8 long long n,x,t;9 bool b[150000002];
10 int a[150000002],c[200002];
11
12 int main()
13 {
14 freopen(pcount.in,r,stdin);
15 freopen(pcount.out,w,stdout);
16 scanf(%d,n);
17 for(int i1;in;i)
18 {
19 scanf(%lld,x);
20 if(b[x]0)
21 {
22 b[x]1;
23 t;
24 c[t]x;
25 }
26 a[x];
27 }
28 sort(c1,ct1);
29 for(int i1;it;i)
30 printf(%d %d\n,c[i],a[c[i]]);
31 return 0;
32 } 爆零太zz了还是别点开了。 然后 突然发现这个题特别的简单 用快排 拍完之后直接相邻的相等就记录 不相等就输出不就完了。。。 mmp。。 代码 1 #includeiostream2 #includecstdio3 #includecmath4 #includealgorithm5 #includecstring6 using namespace std;7 8 int n,s1;9 int a[200002];
10
11 int main()
12 {
13 freopen(pcount.in,r,stdin);
14 freopen(pcount.out,w,stdout);
15 scanf(%d,n);
16 for(int i1;in;i)
17 scanf(%d,a[i]);
18 sort(a1,an1);
19 for(int i1;in;i)
20 {
21 if(a[i]a[i1]) s;
22 else
23 {
24 printf(%d %d\n,a[i],s);
25 s1;
26 }
27 }
28 return 0;
29 } 如果你不开心那我就把右边这个帅傻子分享给你吧 你看他这么好看那么深情的望着你你还伤心吗 真的这照片盯上他五秒钟就想笑了。 一切都会过去的。 转载于:https://www.cnblogs.com/Mary-Sue/p/9443077.html