cogs 76. [NOIP2007] 统计数字
【問題描述】
??? 某次科研調(diào)查時(shí)得到了n個(gè)自然數(shù),每個(gè)數(shù)均不超過1500000000(1.5*10^9)。已知不相同的數(shù)不超過10000個(gè),現(xiàn)在需要統(tǒng)計(jì)這些自然數(shù)各自出現(xiàn)的次數(shù),并按照自然數(shù)從小到大的順序輸出統(tǒng)計(jì)結(jié)果。
【輸入格式】?
????輸入文件pcount.in包含n+1行
第1行是整數(shù)n,表示自然數(shù)的個(gè)數(shù)。
第2--n+1行每行一個(gè)自然數(shù)。
【輸出格式】?
???? 輸出文件pcount.out包含m行(m為n個(gè)自然數(shù)中不相同數(shù)的個(gè)數(shù)),按照自然數(shù)從小到大的順序輸出。每行輸出兩個(gè)整數(shù),分別是自然數(shù)和該數(shù)出現(xiàn)的次數(shù),其問用一個(gè)空格隔開。
【輸入輸出樣例】
?
輸入:?
8
2
4
2
4
5
100
2
100
輸出:
2 3
4 2
5 1
100 2
【限制】
40%的數(shù)據(jù)滿足:1<=n<=1000
80%的數(shù)據(jù)滿足:1<=n<=50000
100%的數(shù)據(jù)滿足:1<=n<=200000,每個(gè)數(shù)均不超過1500 000 000(1.5*10^9)
?
這個(gè)題我犯了一個(gè)超級(jí)超級(jí)超級(jí)zz的錯(cuò)誤!!!
mmp,
?
我覺得肯定特別高級(jí),,
?
我剛開始的思路是這樣的,
用一個(gè)bool數(shù)組記錄是否出現(xiàn)過,,
用兩個(gè)數(shù)組一個(gè)記錄數(shù)字,一個(gè)記錄出現(xiàn)次數(shù),,,
然后排序輸出,
我還考慮去重函數(shù)了呢,,
mmp,
全都超出空間限制了!!!
?
代碼是長這樣的:
?
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<algorithm> 5 #include<cstring> 6 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 i=1;i<=n;++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(c+1,c+t+1); 29 for(int i=1;i<=t;++i) 30 printf("%d %d\n",c[i],a[c[i]]); 31 return 0; 32 } 爆零,太zz了,還是別點(diǎn)開了。?
?
然后!!!
突然發(fā)現(xiàn)這個(gè)題特別的簡單!!!
?
用快排,
拍完之后直接相鄰的相等就記錄,
不相等就輸出不就完了。。。
mmp。。
?
代碼:
?
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<algorithm> 5 #include<cstring> 6 using namespace std; 7 8 int n,s=1; 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 i=1;i<=n;++i) 17 scanf("%d",&a[i]); 18 sort(a+1,a+n+1); 19 for(int i=1;i<=n;++i) 20 { 21 if(a[i]==a[i+1]) s++; 22 else 23 { 24 printf("%d %d\n",a[i],s); 25 s=1; 26 } 27 } 28 return 0; 29 }?
?
如果你不開心,那我就把右邊這個(gè)帥傻子分享給你吧,?
你看,他這么好看,那么深情的望著你,你還傷心嗎??
真的!這照片盯上他五秒鐘就想笑了。?
一切都會(huì)過去的。
轉(zhuǎn)載于:https://www.cnblogs.com/Mary-Sue/p/9443077.html
總結(jié)
以上是生活随笔為你收集整理的cogs 76. [NOIP2007] 统计数字的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三星e2200(三星e2200m)
- 下一篇: 为什么需要消息队列MQ