Submission
Status:
TTTTTTTTTT
Score: 0
User: MisterO
Problemset: C.Sort Number
Language: cpp
Time: 1.095 second
Submitted On: 2024-10-19 22:31:44
#include<bits/stdc++.h>
using namespace std;
int main(){
int n; cin>>n;
long long a[n];
for(int i=0;i<n;i++){
int d; string x;
cin>>d>>x;
int len = x.size();
// reverse(x.begin(),x.end());
long long sum = 0;
// cout<<x<<'\n';
for(int idx=0;idx<len;idx++){
if(isdigit(x[idx])){
sum += (x[idx]-'0')*pow(d,len-idx-1);
}else{
sum += (x[idx]-'A'+10)*pow(d,len-idx-1);
}
}
// cout<<"x = "<<sum<<' ';
a[i] = 0;
for(int n=1;n*n<=sum;n++){
if(sum%n==0){
if(n*n == sum) a[i] += n;
else a[i] += n+sum/n;
}
}
// cout<<a[i]<<'\n';
}
sort(a,a+n);
for(int i=n-1;i>=0;i--) cout<<a[i]<<'\n';
}