CF1196D2 RGB Substring (hard version)

https://www.luogu.com.cn/problem/CF1196D2
前缀和
黄色题
思路:
看当前输入要被修改的这个字符串的第i位,是否与'R','G','B'三个中的一个相等,不相等的另外两个则增加一次修改次数
最后取以'RGB','GBR','BGR'中选其中一个开头的最小修改次数

复制代码
#include<iostream> #include<cstring> using namespace std; const int M=2e5+10; char s[M]; int a[3][M]; int T,n,k,ans; int main() { cin>>T; while(T--) { a[0][0]=a[1][0]=a[2][0]=0; cin>>n>>k; cin>>s; ans=M; string t="RGB"; for(int i=0; i<n; i++) { for(int j=0;j<=2;j++){ if(s[i]!=t[(i+j)%3])a[j][i+1]=a[j][i]+1; else a[j][i+1]=a[j][i]; } }//a从下标为1的位开始&前缀和 for(int i=0; i+k<=n; i++) { for(int j=0;j<=2;j++){ ans=min(ans,a[j][i+k]-a[j][i]); } } //遍历求ans cout<<ans<<endl; } return 0; }
复制代码

 


__EOF__

本文作者灰の魔女伊蕾娜
本文链接https://www.cnblogs.com/2elaina/p/16602954.html
关于博主:编程小萌新一名,希望从今天开始慢慢提高,一步步走向技术的高峰!
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   -イレイナ  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示