就是说,给你一个长度N,和一个长度为N的01串A,然后问你假设B可以是任意一个长度为N的01串,问你A和B的最长公共子序列的长度是多少
感觉一下,然后就是统计A的0的个数和1的个数,较少的那个就是答案
#include <cstdio>
#include <cstring>
#include <vector>
#include <iostream>
#include <string>
#include <cmath>
#include <algorithm>
#include <set>
#include <map>
using namespace std;
char s0[100005];
int main() {
//freopen("input.txt", "r", stdin);
scanf("%s", s0);
int n = strlen(s0);
int zero = 0, one = 0;
for (int i = 0; i < n; ++i)
{
if (s0[i] == '0')
++zero;
else
++one;
}
printf("%d\n", min(zero, one));
//system("pause");
//while (1);
return 0;
}