cf1809D-1900-66min
重点在于看出来操作1至多执行一次,之后就很容易了 ,加上一些预处理的小优化就能过,就是代码逻辑比较复杂,对coding能力有一些要求
#include <iostream>#include <cstring>#include <string>#include <cstdio>#include <algorithm>#include <cmath>#include <vector>#include <map>#include <set>#include <queue>#include <stack>#include <list>#define int long longusing namespace std;string s;int ans;int count1[1000005],count0[1000005]; void solution(){ cin>>s; //cout<<s; ans=10e17; for(int i=0;i<=s.size()-1;i++) { if(s[i]=='1') { if(i>0)count1[i]=count1[i-1]+1; else count1[i]=1; } else { if(i>0)count1[i]=count1[i-1]; else count1[i]=0; } } for(int i=s.size()-1;i>=0;i--) { if(s[i]=='0') { if(i<s.size()-1)count0[i]=count0[i+1]+1; else count0[i]=1; } else { if(i<s.size()-1)count0[i]=count0[i+1]; else count0[i]=0; } } for(int i=0;i<=(int)(s.size())-2;i++) { int count=0; if(s[i]=='1'&&s[i+1]=='0') { // for(int j=i-1;j>=0;j--) // { // if(s[j]=='1')count++; // } // for(int j=i+2;j<s.size();j++) // { // if(s[j]=='0')count++; // } int c1,c2; if(i-1>=0)c1=count1[i-1]; else c1=0; if(i+2<=s.size()-1)c2=count0[i+2]; else c2=0; count=c1+c2; ans=min(ans,(int)((count+1)*10e11+count)); } else { // for(int j=i-1;j>=0;j--) // { // if(s[j]=='1')count++; // } // for(int j=i+2;j<s.size();j++) // { // if(s[j]=='0')count++; // } int c1,c2; if(i-1>=0)c1=count1[i-1]; else c1=0; if(i+2<=s.size()-1)c2=count0[i+2]; else c2=0; count=c1+c2; //cout<<count1[i-1]<<' '<<count0[i+2]<<' '<<ans<<endl<<endl<<endl; ans=min(ans,(int)(count*10e11+count)); } //cout<<i<<' '<<ans<<endl; //cout<<i<<' '<<s.size()-2<<endl; } int flag=1; for(int i=1;i<=s.size()-1;i++) { if(s[i]!=s[i-1]) { flag=0; break; } } if(flag==1)ans=0; cout<<ans<<endl;//<<endl<<endl; } signed main(){ ios::sync_with_stdio(0); cin.tie(0);cout.tie(0); int T; cin>>T; while(T--) solution(); return 0;}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」