Submission
Status:
PPPP-P-PPP
Score: 80
User: Monasm
Problemset: C.Sort Number
Language: c
Time: 0.037 second
Submitted On: 2024-10-19 03:08:24
#include<stdio.h>
#include<string.h>
#include<math.h>
unsigned long long int sum,cnt=0,b[1005],tmp;
int main(){
int t;
scanf("%d",&t);
for(int j=0;j<t;j++){
int n;
char a[100];
scanf("%d %s",&n,a);
for(int i=0;a[i]!='\0';i++){
if(a[i]>='A'){
sum+=(a[i]-'A'+10)*pow(n,strlen(a)-i-1);
}
else if(a[i]>='a'){
sum+=(a[i]-'a'+10)*pow(n,strlen(a)-i-1);
}
else{
sum+=(a[i]-'0')*pow(n,strlen(a)-i-1);
}
}
for(int i=1;i*i<=sum;i++){
if(sum%i==0){
cnt+=i;
if(i!=sum/i){
cnt+=sum/i;
}
}
}
b[j]=cnt;
sum=cnt=0;
}
for(int i=0;i<t;i++){
for(int j=i+1;j<t;j++){
if(b[i]<b[j]){
tmp=b[i];
b[i]=b[j];
b[j]=tmp;
}
}
}
for(int i=0;i<t;i++){
printf("%llu\n",b[i]);
}
}