【解题报告】洛谷P1097 统计数字
题目链接
https://www.luogu.com.cn/problem/P1097
思路
因为数据太大了,所以我们考虑排一个序,然后再遍历一遍,在遍历的过程中直接统计即可
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| #include <iostream> #include <cstdio> #include <algorithm> #include <queue> using namespace std; int n; long long a[200005]; int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; sort(a+1,a+1+n); int ans=a[1],cnt=1; for(int i=2;i<=n;i++) { if(a[i]!=ans) { cout<<ans<<" "<<cnt<<endl; cnt=0; } ans=a[i]; cnt++; } cout<<ans<<" "<<cnt<<endl; return 0; }
|