Submission

Status:

PPPPPPPPPPPPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Zailagend1

Problemset: สุ่มสลับ

Language: cpp

Time: 0.002 second

Submitted On: 2026-10-14 09:38:08

#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
    cin.tie(0)->sync_with_stdio(false);
    int a;
    cin >> a;
    string b;
    cin >> b;
    vector<int> fac(b.size());
    fac[0] = 1;
    for(int i = 1;i<b.size();i++){
        fac[i] = i * fac[i-1];
    }
    int start = b.size()-1;
    int sum = 0;
    for(int i = 0;i<b.size()-1;i++){
        int counter = 0;
        for(int j = i+1;j<b.size();j++){
            if(b[i] > b[j]){
                counter++;
            }
        }
        sum += counter*fac[start];
        start--;
    }
    cout << sum+1;
}