Submission

Status:

PPPPPPPTPTPPPPPPPPPP

Subtask/Task Score:

90/100

Score: 90

User: Kidmaiok

Problemset: สุ่มสลับ

Language: cpp

Time: 0.199 second

Submitted On: 2025-10-07 01:00:31

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,a=1,fac=1;
    string m = "",b = "";
    cin >> n >> m;
    /*if(m.size() > n){
        cout << "Error";
        return 0;
    }else{
        for(int i =0;i<n;i++){
            if(m[i] > 'L'){
                cout << "Error";
                return 0;
            }
        }
    }*/
    for(int i = 1; i<n+1;i++){
        fac = fac * i;
    }
    b = m;
    sort(b.begin(),b.end());
    if(b == m){
        cout << "1";
        return 0;
    }else{
        for(int i=fac;i>0;i--){
            a += 1;
            next_permutation(b.begin(), b.end());
            if(m == b){
                cout << a;
                return 0;
            }
        }
        
        
    }


    
}