fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int getDigit(int num){
  4. int digitSum=0;
  5. while(num!=0){
  6. int r=num%10;
  7. digitSum=digitSum+r;
  8. num=num/10;
  9. }
  10. return digitSum;
  11.  
  12. }
  13.  
  14. int main() {
  15. // your code goes here
  16. int n;
  17. cin>>n;
  18. int a[n];
  19. unordered_map<int,int>v;
  20. for(int i=0;i<n;i++){
  21. cin>>a[i];
  22. }
  23. int ans=-1;
  24. for(int i=0;i<n;i++){
  25. if(v.find(getDigit(a[i]))!=v.end()){
  26. int sum=a[i]+v[getDigit(a[i])];
  27. ans=max(ans,sum);
  28. v[getDigit(a[i])]=max(v[getDigit(a[i])],a[i]);
  29.  
  30.  
  31. }
  32. else{
  33. v[getDigit(a[i])]=a[i];
  34. }
  35. }
  36. cout<<ans;
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0s 5320KB
stdin
3
42 33 60
stdout
102