站外题,求大佬调,必关
  • 板块题目总版
  • 楼主nihao888
  • 当前回复8
  • 已保存回复8
  • 发布时间2025/1/5 16:51
  • 上次更新2025/1/6 08:47:37
查看原帖
站外题,求大佬调,必关
1352997
nihao888楼主2025/1/5 16:51

3249: 统计数字

Time Limit: 1 Sec Memory Limit: 128 MB
Description

已知N个整数Ai,请你统计总共有多少种不同的数字,并按从小到大的顺序输出每种数字是什么?出现了多少次?

Input

第一行一个整数N,表示接下来有N个数字。 接下来N行,每行一个整数Ai,表示第i个数字为Ai。 1 <= N <= 106; 1 <= Ai <= 100;

Output

第一行一个整数K,表示总共出现K种不同的数字。 接下来K行,从小到大输出,每行两个整数,数字Ai,与其出现过的次数。

Sample Input
10
1
5
3
2
1
3
7
1
2
5
Sample Output
5
1 3
2 2
3 2
5 2
7 1
#include <bits/stdc++.h>
using namespace std;
int a[1000005],f[105];
int main(){
	int n,cnt;
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
		f[a[i]]++;
	}
	for(int i=1;i<=100;i++){
		if(f[i]!=0){
			cnt++;
		}
	}
	printf("%d\n",cnt);
	for(int i=1;i<=100;i++){
		if(f[i]!=0){
			printf("%d %d\n",i,a[i]);
		}
	}
	return 0;
} 
/*
10
1
5
3
2
1
3
7
1
2
5
*/

2025/1/5 16:51
加载中...