Codeforces 1633 B. Minority —— 简单思维
作者:互联网
题解:
给你一个01串,你能从中拿出一个子串,将其中出现次数最少的数字给删掉,如果01出现次数相同则不作任何事情,问你最多能删掉多少个数字。
题解:
那我们要删掉最多的,当然是删掉整个字符串。如果两个数量相等?那最后一位不取不就行了。
#include<bits/stdc++.h>
using namespace std;
const int N=2e5+5;
char s[N];
int main()
{
int t;
scanf("%d",&t);
while(t--){
scanf("%s",s);
int num[2]={0},len=strlen(s);
for(int i=0;i<len;i++)
num[s[i]-'0']++;
if(num[1]==num[0])printf("%d\n",num[0]-1);
else printf("%d\n",min(num[1],num[0]));
}
return 0;
}
标签:1633,Minority,int,题解,scanf,删掉,Codeforces,次数,01 来源: https://blog.csdn.net/tianyizhicheng/article/details/122807154