算法竞赛入门经典(第二版) 习题3-11 换低档装置(Kickdown) UVa1588 NEERC2006

Page 59

题意:给出两个长度分别为n1,n2且每列高度只为1或者2的长条,需要将它们放入一个高度为3的容器,问容器的最短长度。

思路:两个字符串起始端对齐,分两个方向移动,得到两个最短长度,再取较小者即可。此题看似简单,技巧却很多,值得思考。


#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define M 110
char s1[M],s2[M];
int main()
{
    //freopen("in.txt","r",stdin);
    while(scanf("%s%s",s1,s2)!=EOF){
        int len1=strlen(s1),len2=strlen(s2),ans1,ans2,cnt1=0,cnt2=0,i=0,j=0;//cnt1,cnt2表示起始位置

        while(i


你可能感兴趣的:(基础题,字符串)