3 條題解

  • 0
    @ 2025-10-6 13:44:53

    使用康托展开来解,讨论里有解释

    #include<stdio.h>

    int main(){

    int n,x;

    char a[13];

    scanf("%d",&n);

    while(n--){

    long long sum=0;

    scanf("%s",a);

    for(int i=0;i<12;i++){

    x=0;

    long long b=1;

    for(int j=i+1;j<12;j++){

    if(a[i]>a[j]){

    x++;}

    }

    for(int z=1;z<=12-i-1;z++){

    b=b*z;

    }

    sum=sum+x*b;

    }

    printf("%lld\n",sum+1);

    }

    return 0;

    }

    資訊

    ID
    174
    時間
    1000ms
    記憶體
    128MiB
    難度
    3
    标签
    (無)
    遞交數
    282
    已通過
    145
    上傳者