悬棺
  • 板块学术版
  • 楼主fuchenghao1208
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/11/28 20:27
  • 上次更新2024/11/28 20:38:57
查看原帖
悬棺
1043387
fuchenghao1208楼主2024/11/28 20:27

最少01翻转次数

内存限制:256 MiB
时间限制:1000 ms
标准输入输出
题目类型:传统
评测方式:文本比较

题目描述

小b有一个01序列,她每次可以翻转一个元素,即将该元素从0变1或者从1变0。

现在她希望序列不降,求最少翻转次数。

输入格式

第一行输入一个数n,其中1≤n≤20000;

第二行输入一个由‘0’和‘1’组成的字符串

输出格式

输出一个非负整数,表示翻转次数

样例

【样例输入】

6
010110

【样例输出】

2

我的代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,ll=0,sum=0;cin>>n;char a[20010];cin>>a;for(int i=0;i<n;i++) if(a[i]=='0') sum+=ll;else ll=1;cout<<sum;  
	return 0;
}

全WA求助,悬棺第一个回答的。

2024/11/28 20:27
加载中...