专栏文章
题解:P12173 [蓝桥杯 2025 省 Python B] 最多次数
P12173题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mipl5hug
- 此快照首次捕获于
- 2025/12/03 13:47 3 个月前
- 此快照最后确认于
- 2025/12/03 13:47 3 个月前
思路
枚举 的每个字符,作为首位,并往后取三位,判断是否是
lqb、lbq、qlb、qbl、blq、bql 其中的一个,如果是的,答案加 1,并跳过两个字符(第二位和第三位)。代码
CPP#include <bits/stdc++.h>
using namespace std;
int main() {
string s;
cin >> s;
int n = s.size();
vector<string> f = {"lqb", "lbq", "qlb", "qbl", "blq", "bql"};
int ans = 0;
for (int i = 0; i <= n - 3; i++) {
string s1 = s.substr(i, 3);//往后取三位。
if (find(f.begin(), f.end(), s1) != f.end()) { //用find函数查找s1是否在f里出现过,也就是判断s1是不是lqb等字符串中的一个。
ans++;
i += 2;//跳过后面两个字符。
}
}
cout << ans << endl;
return 0;
}
谢谢观看!
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...