Submission
Status:
PPPPPPPPPPPPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Prap
Problemset: สุ่มสลับ
Language: cpp
Time: 0.002 second
Submitted On: 2026-04-01 13:36:45
#include <iostream>
#include <string>
#include <cmath>
#include <vector>
using namespace std;
int main() {
int n;
cin>>n;
string nick;
cin>>nick;
int nig[nick.length()];
for (int i = 0; i<nick.length(); i++) {
nig[i] = int(nick[i]) - 'A' + 1;
}
int hol;
long long count = 0;
long long c = 1;
for (int i = 1; i<n; i++) {
c = c * i;
}
for (int i = 0; i<n-1; i++) {
hol = 0;
count = count + (nig[i] - 1) * c;
for (int j = 0; j<n; j++) {
if (nig[j] > nig[i]) {
nig[j]--;
}
}
c = c/(n-i-1);
}
cout<<count+1;
return 0;
}