A1120 Friend Numbers (20分)

一、技术总结

  1. 把题目读懂,简单理解就是看给出的数字中有几个不同的friend ID, 并且把他们从小到大输出。
  2. set容器可以完美实现这一功能。

二、参考代码

#include<iostream>
#include<set>
using namespace std;
const int MAXV = 10010;
set<int> M;//M为最终输出的结果 
int Sum[MAXV];
int getSum(int x){
	int sum = 0;
	while(x > 0){
		sum += x % 10;
		x /= 10;
	}
	return sum;
}
int main(){
	int N;
	scanf("%d", &N);
	for(int i = 0; i < N; i++){
		int x;
		scanf("%d", &x);
		int y = getSum(x);
		M.insert(y);
	}
	printf("%d\n", M.size());
	for(auto it = M.begin(); it != M.end(); it++){
		if(it != M.begin()) printf(" ");
		printf("%d", *it);
	} 
	return 0;
} 
posted @ 2020-06-04 20:23  睿晞  阅读(101)  评论(0编辑  收藏  举报