A. Marin and Photoshoot
A. Marin and Photoshoot
题目大意:
给一个01串,其中每一个长度大于等于2的子区间中0的数量不大于1的数量,最少插入多少1
思路和代码:
找最小单元,00和010:
00 => 0110
010=>0110
也就是说遇到00要加2,遇到010要加1
void solve(){
ll n , ans = 0 ;
string s ;
cin >> n >> s ;
for(int i = 0 ; i < s.size() ; i ++ ){
if(s[i] == '1') continue ;
if(i + 1 < s.size() && s[i + 1] == '0') ans += 2 ;
if(i + 2 < s.size() && s[i + 1] == '1' && s[i + 2] == '0') ans ++ ;
}
cout << ans << "<=\n" ;
}//code_by_tyrii
小结:
简单的字符串问题,从最小的单元为起点去思考
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现