zoukankan      html  css  js  c++  java
  • UVA1588

    数据不大,暴力过。纳闷的是长度是1~100,数组开150都不行,必须要200才不会WA。

    思路:注意双向匹配。for(int i=0;i<2;i++,swap(str1,str2))。记录两个字符串匹配到的数目,两个长度相加减去匹配到的数目即可。

      匹配过程:b串不动,a串从b串第一个字符开始匹配,可行的话继续向后匹,直到a串匹完;不可行的话在b串上向后推一个。

      到今天才知道,输入字符串之后cin>>str1,不会完全刷新之前的,而仅仅是将其最后一个字符后面的一个字符变成'',其后的如果之前输入过则会保留。

      所以要memset(str,0,sizeof(str)).

    代码

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
        char str1[205],str2[205];
        while(cin>>str1>>str2)
        {
            int ans[2]={300,300};
            for(int k=0;k<2;k++,swap(str1,str2))
            {
                int len1,len2,i=0,j=0,J=0;
                len1=strlen(str1);
                len2=strlen(str2);
                int plen=0;
                while(J<len2)
                {
                    j=J,i=0;
                    while(i<len1)
                    {
                        if(!(str1[i]=='2'&&str2[j]=='2'))
                        {
                            if(str1[i]&&str2[j])    plen++;
                            i++;
                            j++;
                        }
                        else{
                            J++;
                            i=0;
                            plen=0;
                            break;
                        }
                    }
                    if(i==len1)
                    {
                        int a=len1+len2-plen;
                            ans[k]=ans[k]<a?ans[k]:a;
                            break;
                    }
                }
                if(ans[k]==300)    ans[k]=len1+len2;
            }
            cout<<min(ans[0],ans[1])<<endl;
            memset(str1,0,sizeof(str1));
            memset(str2,0,sizeof(str2));
        }
        return 0;
    }
  • 相关阅读:
    暑假团队学习第一周
    Python快速入门(3)
    Python快速入门(2)
    走入PHP-类与对象
    走入PHP-declare、ticks、encoding、include
    走入PHP-变量、运算符
    XAMPP安装报错及解决
    走入PHP-数据类型和字符串语法
    走入PHP-初次见面
    剑指offer-替换空格
  • 原文地址:https://www.cnblogs.com/depth/p/5671757.html
Copyright © 2011-2022 走看看