• UVa 1588 Kickdown


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

    分别以s,为标准,平移,得出一个长度l1,

    再以t为标准,得出一个长度l2,

    取len=min(len1,len2),再取len=max(max(n1,n2),len)(因为还是要覆盖住更长的那根长条)

     1 #include<iostream>  
     2 #include<cstdio>  
     3 #include<cstring> 
     4 #include <cmath> 
     5 #include<stack>
     6 #include<vector>
     7 #include<map> 
     8 #include<queue> 
     9 #include<algorithm>  
    10 #define mod=1e9+7;
    11 using namespace std;
    12 
    13 typedef long long LL;
    14 const int maxn=10005;
    15 char s[maxn],t[maxn];
    16 
    17 int main(){
    18     int i,j,ans,len1,len2,len,flag,tt;
    19     while(cin>>s>>t){
    20         len1=strlen(s);
    21         len2=strlen(t);
    22         len=max(len1,len2);
    23         
    24         for(i=0;i<len1;i++) {//s动,t不动 
    25             for(j=0;j<len2;j++){
    26                 int a=s[j+i]-'0';
    27                 int b=t[j]-'0';
    28                 if(a+b>3) break;
    29             }
    30             
    31             if(j==len2) break;
    32         }
    33         
    34         int x=len2+i;
    35         
    36         for(i=0;i<len2;i++) {//t动,s不动 
    37             for(j=0;j<len1;j++){
    38                 int a=s[j]-'0';
    39                 int b=t[j+i]-'0';
    40                 if(a+b>3) break;
    41             }
    42             
    43             if(j==len1) break;
    44         }
    45         int y=len1+i;
    46         
    47         len=max(len,min(x,y)); 
    48         printf("%d
    ",len);
    49                 
    50         memset(s,0,sizeof(s));
    51         memset(t,0,sizeof(t));
    52     }
    53     return 0;    
    54 }
    View Code

     自己做错的原因是:只考虑到以一个为标准,另一个来移动,少考虑了一种情况

  • 相关阅读:
    c语言中程序的循环控制 大小值的判断及赋值
    python中猜数字小游戏
    R语言中自编函数(例题)
    c语言中continue语句
    c语言中程序的循环控制 变量的非常规变化例题
    python中向列表中添加元素
    mean
    python中原始字符串和长字符串
    ArcInfo 的工作空间和 Coverage
    ArcGIS资料大全
  • 原文地址:https://www.cnblogs.com/wuyuewoniu/p/4345571.html
Copyright © 2020-2023  润新知