分析
讨论 和其它三个字母出现次数的大小就可以了。有且只有两种状态。 和 的情况。
代码
#include<bits/stdc++.h> using namespace std; const int N = 1e7+100; char ch[N]; int ans; void solve(int a,int b,int c,int d) { int Min = min(b,min(c,d)); if(!a||!Min) return; if(a * 2 <= Min) ans = a * 2; else ans = Min; } int k,i,n,g,M; int main() { cin >> M >> ch + 1; for(int num = 1;num <= M;num++) { if(ch[num] == 'k') k++; if(ch[num] == 'i') i++; if(ch[num] == 'n') n++; if(ch[num] == 'g') g++; } solve(k,i,n,g); cout << ans << endl; }