标签:
The longest common subsequence is a well known DP problem: given two strings A and B, one has to compute the maximum length of a subsequence that‘s common to both A and B.
In this particular problem we work with strings A and B formed only by 0 and 1, having the same length. You‘re given a string A of length n. Iterate all strings B possible. There are 2n of them. Calculate, for each string B, the longest common subsequence of A and B. Then, output the minimum length obtained.
The first and the only line of the input contains string A, formed only by 0 and 1. It‘s guaranteed that the length is between 1 and 105.
Output a single number - the requested length.
101010
3
1 #include <bits/stdc++.h> 2 using namespace std; 3 const int maxn = 100010; 4 char str[maxn]; 5 int main() { 6 while(~scanf("%s",str)) { 7 int one = 0,zero = 0; 8 for(int i = 0; str[i]; ++i) 9 if(str[i] == ‘0‘) zero++; 10 else one++; 11 printf("%d\n",min(zero,one)); 12 } 13 return 0; 14 }
CodeForcesGym 100735G LCS Revised
标签:
原文地址:http://www.cnblogs.com/crackpotisback/p/4812497.html