-
取石子
ti
-
IAN
@
2025-5-22 14:21:49
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main() {
int n;
string s;
cin >> n >> s;
vector<int> preM(n + 1, 0), preY(n + 1, 0);
for (int i = 1; i <= n; ++i) {
preM[i] = preM[i - 1] + (s[i - 1] == 'M');
preY[i] = preY[i - 1] + (s[i - 1] == 'Y');
}
int totM = preM[n];
int totY = preY[n];
int m = (n + 1) / 2;
for (int k = m; k < n; ++k) {
int mM = preM[k];
int fM = totM - mM;
if (mM == fM) continue;
int mY = preY[k];
int fY = totY - mY;
if (mY == fY) continue;
cout << k << endl;
return 0;
}
cout << -1 << endl;
return 0;
}