首页 > 代码库 > Uva 1588 Kickdown
Uva 1588 Kickdown
这道题思路并不难想,在做题过程中主要遇到的困难有:
因为没有仔细的考虑边界情况,没有分析全面,导致因=没有取到而得不出正确结果,浪费的大量时间。
今后在做这类题目时,一定要先进行一个比较全面的分析+模拟,再动手写代码,避免浪费时间。
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 using namespace std; 5 #define maxn 1000 6 int main(){ 7 int len1,len2; 8 char s1[maxn],s2[maxn]; 9 while(scanf("%s %s",s1,s2)!=EOF){10 len1=strlen(s1);11 len2=strlen(s2);12 for(int i=len1;i<len1+len2;i++)s1[i]=‘0‘;13 for(int i=len2;i<len1+len2;i++)s2[i]=‘0‘;14 int ok;15 int minv=maxn;16 for(int i=0;i<=len2;i++){17 ok=1;18 for(int j=0;j<min(len1,len2-i);j++){19 if(s2[i+j]+s1[j]-2*‘0‘>3){20 ok=0;21 break;22 }23 }24 if(ok&&max(len2,len1+i)<minv)minv=max(len2,len1+i);25 }26 for(int i=0;i<=len1;i++){27 ok=1;28 for(int j=0;j<min(len2,len1-i);j++){29 if(s1[i+j]+s2[j]-2*‘0‘>3){30 ok=0;31 break;32 }33 }34 if(ok&&max(len1,len2+i)<minv)minv=max(len1,len2+i);35 }36 printf("%d\n",minv);37 }38 return 0;39 }
Uva 1588 Kickdown
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。