Submission

Status:

--------------------

Subtask/Task Score:

0/100

Score: 0

User: Sunsblad

Problemset: สุ่มสลับ

Language: cpp

Time: 0.005 second

Submitted On: 2026-10-02 20:59:02

#include<iostream>
#include<string>
#include<vector>

using namespace std;
int main(){
    int a;
    string target;
    cin>>a>>target;
    vector<bool> k(a,true);
    int sum = 0;
    for(int i = 0; i < a; i++){
        char targ = target[i];
        char curr;
        int minus =0, tmp = 0, dis;
        for(int j = 0; j < a; j++){
            if(k[j]){
                curr = j+65;
                break;
            }
        }
        cout<<"Cur = "<<curr<<"targ = "<<targ<<'\n';
        for(int j = int(curr)- 65 + 1; j < int(targ) - 65; j++){
            if(!k[j]){
                minus++;
            }
        }
        cout<<"Minus = "<<minus<<'\n';
        dis = int(targ)- int(curr);
        //cout<<"dis = "<<dis<<'\n';
        tmp = (dis-minus);
        for(int j = 0; j < a - i - 1; j++){
            tmp *= j+1;
        }
        //cout<<"tmp = " << tmp<<'\n';
        k[int(targ)-65] = 0;
        sum += tmp;
    }
    cout<<sum+1;
}