Submission

Status:
PPPPPPPPPP

Score: 100

User: Nagornz

Problemset: ดีกค์เวิร์ด

Language: cpp

Time: 0.010 second

Submitted On: 2025-03-30 22:01:41

/*
TASK: dyck
LANG: C++
AUTHOR: Nagorn Phongphasura
CENTER: SUT
*/

#include <bits/stdc++.h>
#define int long long
using namespace std;

bool cnt(vector <int> &a){
    int aa = 0, bb = 0;
    for (auto e : a) {
        if (e == 0) aa++;
        else bb++;
        if (aa < bb) return false;
    }
    return true;
}

int cal(vector <int> &a, int wow, int wowow){
    int sum = 0;
    for (int i = 0; i < a.size(); i++) {
        sum += (i + 1) * (a[i] == 0 ? wow : wowow);
    }
    return sum;
}

int32_t main(){
    int n;
    cin >> n;
    char x, xx; cin >> x >> xx;
    vector <int> a(2 * n, 0);
    for (int i = n; i < n * 2; i++) a[i] = 1;
    int sum = 0;
    int wow = (x - 'A' + 1), wowow = (xx - 'A' + 1);
    do {
        if (!cnt(a)) continue;
        int ch = cal(a, wow, wowow);
        sum += ch;
        // for (auto e : a) cout << e;
        // cout << " " << ch << "\n";
    } while(next_permutation(a.begin(), a.end()));
    cout << sum;
}