您当前的位置: 首页 > 

*DDL_GzmBlog

暂无认证

  • 3浏览

    0关注

    605博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[Acwing] 第66场周赛 4607.字母补全

*DDL_GzmBlog 发布时间:2022-09-01 13:47:47 ,浏览量:3

前言

t a g : tag : tag: 滑动窗口 暴力

传送门 : 好久没有写滑动窗口了,卡了好久

题意 : 给定一个字符串,让你修改其中的?变为其他大写字符。

使得该字符串存在一个长度为26的子串并且其中每个字符只出现一次

思路 : 很显然的滑动窗口题,至于暴力我没一眼看出来

我们需要维护一个长度为26的不存在重复的字符串

因此我们可以利用滑动窗口维护一个不重复的窗口。我们利用 c n t [ ] cnt[] cnt[]进行计数,如果当前的窗口出现重复我们移动即可

否则的话,当窗口第一次到达 26 26 26长度的时候,我们就可以进行更改

除了当前26长度的?,我们统一替换为A即可

code :

string s;
int cnt[36];

void solve(){
	cin>>s;
	int len = s.size();
	int flag =0  ;
	
	
	for(int i=0,j = 0 ;i            
关注
打赏
1657615554
查看更多评论
0.0393s