Submission

Status:
PPPP-P-PPP

Score: 80

User: Monasm

Problemset: C.Sort Number

Language: c

Time: 0.038 second

Submitted On: 2024-10-19 03:05:30

#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{
                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]); 
    } 
}