鸡
2023-08-17 10:05:25
发布于:河北
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
freopen("chicken.in", "r", stdin);
freopen("chicken.out", "w", stdout);
int t;
cin >> t;
while(t--) {
string field;
int n, k; // n 只奶牛,k 移动
cin >> n >> k >> field;
int pc, pn, used = 0; // 前一个安置点的位置
pc = pn = -1e5 - 5; // G,H的位置都很远
for(int i = 0; i < field.length(); i++) {
if(field[i] == 'C' && i - pc > k){
++used;
if(i + k < n) // 没有超过
pc = i + k;
else
pc = i;
if(pc == pn) pc--;
}else if(field[i] == 'N' && i - pn > k){
++used;
if(i + k < n)
pn = i + k;
else
pn = i;
if(pc == pn) pn--;
}
}
cout << used << endl;
}
fclose(stdin);
fclose(stdout);
return 0;
}
这里空空如也
有帮助,赞一个