Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: theem1502

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

Language: cpp

Time: 0.029 second

Submitted On: 2026-03-13 23:49:23

#include <bits/stdc++.h>
using namespace std;
int num, a, b;
/*
int recursion(int index, int cnt) {
        if (index == num) {
                if (cnt < (index - cnt)) return -1*b*index;

                cout << "what ";  return 0;}


        if (cnt >= (index - cnt)) {cout << "in " << cnt << " " << index << "\n"; return recursion(index + 1, cnt + 1) + a*(index + 1) + recursion(index + 1, cnt) + b*(index + 1);}

        else {
            return -1*b*(index);
        }

}

int sum = 0;
void rec(int index, int cnt, vector<bool> &j) {
    if (index == num) {
            cout << "yay" << "\n";
    for (int i = 0; i < num; i++) {
        cout << j [i]
 << " ";
 }
 cout << "\n";
        if (cnt != (index - cnt)) {return;}
        int temp = 0;
        for (int i = 0; i < num; i++) {
            if (j[i] == 0) {
                temp += (i+1) * a;
            }
            else {
                temp += (i+1) * b;
        }
        }
        sum += temp;

    }

    j.push_back(false);
    rec(index + 1, cnt + 1, j);
    j.pop_back();
    j.push_back(true);
    rec(index + 1, cnt, j);
    j.pop_back();
}
*/





int main() {

    cin >> num;

    char temp1, temp2;
    cin >> temp1 >> temp2;
    a = temp1 - 'A' + 1;
    b = temp2 - 'A'  +1 ;
    /*
    cout << "deb " << a << " " << b <<"\n";
    cout << recursion(0, 0);
*/

    vector<int> thearray;
    for (int i = 0; i < num; i++) thearray.push_back(a);
    for (int i = 0; i < num;i++) thearray.push_back(b);
    sort(thearray.begin(), thearray.end());
    int sum = 0;
    int c = 0;
    bool tb = true;
    for (int i =0 ;i < 2*num;i++) {
            if (thearray[i] == a) c++;
            if (c < (i - c)) tb = false;

        }
        if (tb == true) {
            for (int i = 0; i < 2*num; i++) {
                sum += (i+1) * thearray[i];

            }
        }
  // cout << "sum" << sum << "\n";
    while(next_permutation(thearray.begin(), thearray.end())) {
      //      cout << "hi";
        int acount = 0;
        bool thebool = true;
        for (int i =0 ;i < 2*num;i++) {
                   if (acount < (i - acount)) {/*cout << "um" << "\n";*/ thebool = false;}
            if (thearray[i] == a) acount++;
           // cout << "acount " << acount << " ";


        }
      //  cout << "\n";
        if (thebool == true) {
             //   cout << "w";
            for (int i = 0; i < 2*num; i++) {
                sum += (i+1) * thearray[i];

            }

        }

    }
    cout << sum;


}