Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Bestzu

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

Language: cpp

Time: 0.015 second

Submitted On: 2025-10-07 11:54:54

#include <bits/stdc++.h>
#define endl '\n'
using namespace std;

int n, sum = 0;
string a, b;

void recur(int l, int cnt1, int cnt2, string s) {
	if(l == 2*n) {
		if(cnt1 >= cnt2) {
			for(int i = 0; i < s.size(); i++) {
				sum += (s[i]-'A'+1)*(i+1);
			}
		}
		return;
	}
	
	//choose 1
	if(cnt1 < n) {
		recur(l+1, cnt1+1, cnt2, s+a);
	}
	
	//choose 2
	if(cnt1 > cnt2 && cnt2 < n) {
		recur(l+1, cnt1, cnt2+1, s+b);
	}
}

int main() {
    ios::sync_with_stdio(false); cin.tie(0);

    cin >> n;
    cin >> a >> b;
    recur(0, 0, 0, "");

	cout << sum;
    return 0;
}