Submission
Status:
PPPPPPPPPPPPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: spammer_destroyer
Problemset: สุ่มสลับ
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-17 12:02:00
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int fac(int n) {
int i,product=1;
for(i=1;i<=n;i++) {
product*=i;
}
return product;
}
int find(vector<char>& str, char c, int n) {
int i;
for(i=0;i<n;i++) {
if(str[i]==c) {
str.erase(str.begin()+i);
return i;
}
}
}
int main()
{
int n,i,j,sum=1;
string input;
cin >> n >> input;
vector<char> str(n);
for(i=0;i<n;i++) {
str[i]='A'+i;
}
int len=input.length();
for(i=0;i<len;i++) {
sum+=(fac(len-i-1)*find(str,input[i],n));
}
cout << sum;
return 0;
}