思路:
计算每个数的digits和,存入set,set会自动排序和去重
代码:
#include<iostream>
#include<set>
using namespace std;
int main(){
int n;
cin>>n;
set<int> st;
for(int i=0;i<n;i++){
int a,sum=0;
cin>>a;
for(;a>0;a/=10) sum+=a%10;
st.insert(sum);
}
printf("%d
%d",st.size(),*(st.begin()));
set<int>::iterator it=st.begin();
for(it++;it!=st.end();it++) printf(" %d",*it);
return 0;
}