fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int sumofds(int v){
  4. int s= 0;
  5. while(v){
  6. s+=(v % 10);
  7. v = v / 10;
  8. }
  9. return s;
  10. }
  11. bool cmpf(int f, int m){
  12. if(sumofds(f)==sumofds(m)){
  13. return (f > m);
  14. }
  15. return sumofds(f)<sumofds(m);
  16. }
  17. int main() {
  18. int bhm; cin>>bhm;
  19. vector<int>v(bhm);
  20. for(int i=0; i<bhm;i++){
  21. cin>>v[i];
  22. }
  23.  
  24. sort(v.begin(), v.end(), cmpf);
  25.  
  26. for(auto x:v){
  27. cout<<x<<" ";
  28. }
  29. return 0;
  30. }
Success #stdin #stdout 0.01s 5488KB
stdin
7
20 88 975 1 0 40 22
stdout
0 1 20 40 22 88 975