题解 3154: 蓝桥杯2023年第十四届省赛真题-子串简写

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

c++ 用string内置函数

摘要:解题思路:先扫一遍,把c1的下标存入vector数组,然后再从后往前扫一遍,当找到c2,并且c2的下标i>=k-1(保证字符串有那么长)时,用string的成员函数rfind从c2往左找第一个c1,再……

暴力写法优化

摘要:解题思路:注意事项:参考代码:#include <bits/stdc++.h>using namespace std;int main(){ long re=0; ……

二分法求解

摘要:解题思路:首先字符串是s,两个连接字符是c1和c2而我们可以发现对于每个c1都会有一个c2(下标记为pos)可以使得pos之后的字符串都能满足条件,发现了没有很像二分的思路,先用a,b数组保存c1,c……

子串简写的两种解题思路:1:前缀和O(n);2:双指针O(n)

摘要:解题思路:对于前缀和,我们用L和R表示字符串的左端点和右端点;我们用一个前缀和数组s[N]来维护a出现的次数,表示在第i位之前有多少个a。处理完后直接将字符串从后往前枚举,如果找到一个b,则可以匹配前……

前缀和秒杀

摘要:解题思路:注意事项:边界参考代码:#include <bits/stdc++.h> #define int long long #define rep(i, j, n) for (int i = ……

优化的双重循环

摘要:### 小菜niao第一次写题解,希望各位dalao勿喷。 #### 大家一开始的思路如果是直接暴力两层for循环,但由于此题的数据范围较大,如果不进行优化必定会超时! #……

3154 字符简写(新手上路,求大佬指正)(动态规划)

摘要:解题思路:对于输入的数据我们只需要辨别是否是字符c1和c2。对一个符合题目要求的子串来说,结尾一定是c2字符,开头为c1字符。因此只需要将每个c2字符前c1字符的个数相加即可。同时子串有长度n的限制,……

3154: 蓝桥杯2023年第十四届省赛真题-子串简写

摘要:解题思路:    在本子上手写模拟一下就出来了。以c2为结尾,记录当前有多少个c2,存在dp数组内    以c1为开头,循环寻找c1,从c1到结尾的c2个数存在dp[i]内,相减就是c2个数,再留出k……