PAT(甲级) 1120 Friend Numbers (20point(s)) set的使用

桃扇骨 2024-05-08 06:08 155阅读 0赞
题目

题目链接

思路

依次处理每个数字,把每位数字求和后放入set容器中(set容器会自动排序)

代码
  1. #include <iostream>
  2. #include <vector>
  3. #include <cstring>
  4. #include <algorithm>
  5. #include <stack>
  6. #include <set>
  7. #include <queue>
  8. #include <malloc.h>
  9. #include <math.h>
  10. using namespace std;
  11. const int maxn = 1010;
  12. set<int> S;
  13. int main()
  14. {
  15. int n, t, sum = 0;
  16. scanf("%d", &n);
  17. for(int i = 0; i < n; i ++){
  18. scanf("%d", &t);
  19. sum = 0;
  20. while(t > 0){
  21. sum += t % 10;
  22. t = t / 10;
  23. }
  24. S.insert(sum);
  25. }
  26. printf("%d\n", (int)S.size());
  27. bool flag = false;
  28. for(auto it = S.begin(); it != S.end(); it ++){
  29. if(!flag) flag = !flag;
  30. else printf(" ");
  31. printf("%d", *it);
  32. }
  33. printf("\n");
  34. system("pause");
  35. return 0;
  36. }

发表评论

表情:
评论列表 (有 0 条评论,155人围观)

还没有评论,来说两句吧...

相关阅读