Submission

Status:

PPPPPPPPPPPPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Dark_kingdom

Problemset: สุ่มสลับ

Language: cpp

Time: 0.002 second

Submitted On: 2026-10-10 00:02:34

#include <iostream>
#include <string>
using namespace std;

long long fac(int n)
{
	if(n<=1) return 1;
	return n*fac(n-1);
}

int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	
	int n;
	if(!(cin>>n)) return 0;
	string p;
	cin>>p;
	long long sum = 0;
	
	for(int i = 0; i<n; i++)
	{
		long long k = 0;
		for(int j= i+1; j<n; j++)
		{
			if(p[j]< p[i]) k++;
		}
		sum+= k*fac(n-i-1);
	}
	
	cout<<sum +1; 
	return 0;
}