• UVA1588-Kickdown


    2018-10-30-18:27:03

    原题链接

    题目描述:

      给出两个长度分别为n1,n2且每列高度只为1或2的长条,需要将它们放入一个高度为3的容器,求出能够容纳他们的最短容器长度。

    本题思路:

      模拟插入,从第一个接口开始插,如果不满足条件就跳到下一个接口,满足条件时跳出函数输出答案即可。

    本题注意点:

      第一次提交时没有考虑到插和被插顺序不一样导致结果不一。特殊数据2222 211112。

    本题感悟:

      遇到题目一定要多方位考虑,考虑到就去实现,不要根据经验主观臆断。

    AC代码:

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <iostream>
     4 using namespace std;
     5 #define max 3
     6 
     7 int link(string s1,string s2){
     8     bool flag=false;
     9     int len1=s1.size(),len2=s2.size();
    10     int i,j;
    11     for(i=0;i<=len2;i++){
    12         int index=i;
    13         if(!flag)
    14         for(j=0;j<len1;j++){
    15             if(s1[j]+s2[index]-2*'0'>max)
    16                 break;
    17             if(index==len2-1||j==len1-1){
    18                 flag=true;
    19                 break;
    20             }
    21             index++;
    22         }
    23         else
    24             break;
    25     }
    26      return i+len1-1>len2?i+len1-1:len2;
    27 }//s1插s2
    28 
    29 int main()
    30 {
    31     string s1,s2;
    32     while(cin>>s1>>s2){
    33         cout<<min(link(s1,s2),link(s2,s1))<<endl;
    34     }
    35     return 0;
    36 }

      

  • 相关阅读:
    HSF的原理分析
    python--cryptography加密
    PyQt5--QTDesigner--UI资源
    PyQt5--QTDesigner--UI样式表
    python--struct
    python--ffmpy3与ffmpeg
    python--you-get:视频下载
    python--base64--简单的加密和解密
    python--StringIO-在内存中读写str
    电脑技巧
  • 原文地址:https://www.cnblogs.com/bianjunting/p/9874148.html
Copyright © 2020-2023  润新知