Submission
Status:
PPPPPPPPPPPPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Poon
Problemset: สุ่มสลับ
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-07 21:13:54
#include <iostream>
using namespace std;
int fact(int n)
{
if(n==1||n==0)
{
return 1;
}
return n*fact(n-1);
}
int main()
{
int n;
cin>>n;
char s[n];
scanf("%s",s);
int rank=1;
for(int k=0;k<n;k++)
{
int c=0;
for(int i=k+1;i<n;i++)
{
if(s[k]>s[i])
{
c++;
}
}
rank+=fact(n-k-1)*c;
}
cout<<rank;
}