Submission

Status:

TTTTTTTTTT

Subtask/Task Score:

0/100

Score: 0

User: Zailagend1

Problemset: C.Sort Number

Language: cpp

Time: 1.096 second

Submitted On: 2026-09-19 22:49:20

#include<bits/stdc++.h>
using namespace std;
int main(){
  int a;
  cin >> a;
  vector<pair<int,string>> b(a);
  for(int i = 0;i<a;i++){
    cin >> b[i].first >> b[i].second;
  }
  unordered_map<char,int> decoder = {
    {'0',0},
    {'1',1},
    {'2',2},
    {'3',3},
    {'4',4},
    {'5',5},
    {'6',6},
    {'7',7},
    {'8',8},
    {'9',9},
     
    {'A',10},
    {'B',11},
    {'C',12},
    {'D',13},
    {'E',14},
    {'F',15}
  };
  set<int> result;
  for(pair<int,string> x : b){
    int exp = 1;
    int res = 0;
    string s = x.second;
    reverse(s.begin(), s.end());
    for(char y : s){
      res += exp * decoder[y];
      exp *= x.first;
    }
    result.insert(res);
  }
  vector<int> result2;
  for(int x : result){
    int buf = 0;
    for(int i = 1;i<=x;i++){
      buf += (x%i == 0)?i:0;
    }
    result2.push_back(buf);
  }
  sort(result2.begin(),result2.end());
  reverse(result2.begin(),result2.end());
  for(int x : result2){
    cout << x << '\n';
  }
}