这个代码为什么会输出0
  • 板块学术版
  • 楼主C202301
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/5/5 11:53
  • 上次更新2024/5/5 12:04:14
查看原帖
这个代码为什么会输出0
975726
C202301楼主2024/5/5 11:53

在线等,挺急的

#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
string c[200001];
int main()
{
    int n,ans=1,r2=0;
    string s;
    cin>>n>>s;
    char op=s[0];
    c[ans]+=op;
    for(int i=1;i<n;i++)
    if(s[i]==op)
    c[ans]+=s[i];
    else
    ans++,c[ans]+=s[i],op=s[i];
    op='1';
    int value[ans+1];
    value[0]=0;
    for(int i=1;i<=ans;i++)
    {
        if(op=='1')
        {
        	int q=c[i].size();
        	value[i]=min(value[i-1]+q,min(value[i-1]+2,r2+2));
        	op='0';
		}
        if(op=='0')
        value[i]=value[i-1],op='1',r2+=c[i].size();
    }
    cout<<value[ans];
    return 0;
}
2024/5/5 11:53
加载中...