UVA1588(Kickdown)。
只需要固定长串,拿着短串移动就好了。
我是从右往左移动,需要注意的是要判断两头重叠部分(左端重叠和右端重叠)的大小关系。
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstdlib>
#include <cstring> using namespace std; int main()
{
char s1[];
char s2[];
char s3[];
int i,j;
while(scanf("%s",s1)!=EOF)
{
scanf("%s",s2);
int len1=strlen(s1);
int len2=strlen(s2);
for(i=len1; i<len1+len2; i++)
{
s1[i]='';
}
s1[i]='\0';
for(i=len2; i<len1+len2; i++)
s2[i]='';
s2[i]='\0';
if(len1<len2)
{
strcpy(s3,s1);
strcpy(s1,s2);
strcpy(s2,s3);
int x=len1;
len1=len2;
len2=x;
}
// puts(s1);
// puts(s2);
int t=;
int r=;
for(i=; i<=len1; i++)
{ for(j=len1-i; j<len1+len2-i; j++)
{
if((s1[j]-'')+(s2[j-len1+i]-'')>)
break;
}
if(j==len1+len2-i)
t=i; //printf("%d\n",t);
} for(i=; i<len2; i++)
{
for(j=; j<len2-i; j++)
{
if(s1[j]-''+s2[j+i]-''>)
break;
}
if(j==len2-i)
{r=i;
break;}
}
// printf("r=%d\n",r);
//int Max=max(r,t);
if(t==&&r==)
printf("%d\n",len1+len2);
else if(t==&&r!=)
printf("%d\n",len1+r);
else if(r==&&t!=)
{
if(t>len2)
t=len2;
printf("%d\n",len1+len2-t);
}
else
{
if(t>len2)
t=len2;
if(t>len2-r)
printf("%d\n",len1+len2-t);
else
printf("%d\n",len1+r);} }
return ;
}
UVA1588(Kickdown)。的更多相关文章
- 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。
一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...
- spring 笔记1: mvn 中Controller方法的参数不能是嵌套类(内部类)。
最近做spring开发,个人认为,Controller和客户端js通讯时传递的参数类 只使用某几个方法,为了减少对其他功能的影响,想把参数类定义为Controller类的 嵌套类(内部类).但是实践发 ...
- 安卓Json介绍(转)。
1.JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式, ...
- 2014-11-9------- 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。
一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...
- 关于XML(一)。
关于XML 什么是XML? XML是可扩展标记语言.类似于HTML,XML的宗旨是旨在传输数据,而非显示数据.其标签没有预定义,您需要自行定义标签.XML具有自我描述性,是W3C的推荐标准. XML与 ...
- 【转】简单了介绍js中的一些概念(词法结构) 和 数据类型(部分)。
1 , javascript字符集: javascript采用的是Unicode字符集编码. 为什么要采用这个编码呢? 原因很简单,16位的Unicode编码可以表示地球人的任何书面语言.这是语言 国 ...
- python中剔除字典重复项,可以使用集合(set)。
使用集合(set)剔除字典中的重复项(value). 1)具体例子: #甲乙丙丁使用的编程语言programming_languages = { '甲':'java', '乙':'python', ' ...
- 磁盘是随机存储设备,但不是随机存储器(RAM)。为什么?
磁盘是随机存储设备,但不是随机存储器(RAM).为什么?
- C语言中存储类别又分为四类:自动(auto)、静态(static)、寄存器的(register)和外部的(extern)。
除法运算中注意: 如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如8/3 = 2:而两数中有一个为小数,结果则为小数,如:9.0/2 = 4.500000. 取余运算中注意: 该运算只适 ...
随机推荐
- dir()函数:罗列出参数所有的功能列表
#coding=utf-8import sysprint dir(sys)#罗列出参数中所有的功能列表sys.__doc__#调用参数中的函数 #dir()函数扩展展详解python中dir()函数不 ...
- C# Wpf双向绑定实例
Wpf中双向绑定处理需要两处 实例1: 1.前台Xaml中属性Binding 时Model指定 TwoWay <Grid> <Ellipse x:Name="ellipse ...
- HTML5 Canvas 概述
本文中,我们将探索如何使用HTML5的Canvas API.Canvas API很酷,我们可以通过它来动态创建生成和展示图形,图表,图像以及动画.本文将使用渲染API(rendering API)的基 ...
- repeater控件 + marquee标签 实现文字滚动显示
各种信息网站.BBS等网站上的公告信息模块的实现 拖出一个repeater控件绑定数据库中要显示的信息 在repeater的 <ItemTemplate> ... </ItemTem ...
- 抓取锁的sql语句-第六次修改
增加异常处理 CREATE OR REPLACE PROCEDURE SOLVE_LOCK AS V_SQL VARCHAR2(3000); --定义 v_sql 接受抓取锁的sql语句V_SQL02 ...
- 【转】UITextView 修改键盘 的return按钮
原文:http://www.apkbus.com/blog-107838-45740.html 1 #import <UIKit/UIKit.h>2 3 @interface TextVi ...
- PHP后台传值
前台数据往后台传值,往往是新手最头痛的,最近在学习thinkPHP的时候,也遇到了这种问题,总结一下,往不足之处请大家指教. 一.前台界面代码,往后台传值有两种方式,一种是get,另一种是post,新 ...
- 我是怎样自学日语的(太TM励志了!)
学日语并不难,难是难在你有没有信心学好日语,有没有恒心学好日语.如果三天打鱼两天晒网的话,我劝你还是趁早死心,在语言世界里没有任何的捷径,有的只是艰辛和不懈的努力. 我自认为自己在学语言方面很有天赋, ...
- C#:装箱和拆箱相关知识整理
1.装箱和拆箱是一个抽象的概念 2. 装箱是将值类型转换为引用类型 ; 拆箱是将引用类型转换为值类型 利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换,将值类型 ...
- 关于32位程序在Win7&64位系统中连接Microsoft Excel数据源的问题
最近在新公司电脑上跑以前的selenium测试框架的时候,抛出了如下的错误 出现的是ODBC Driver问题:[Microsoft][ODBC Driver Manager] Data source ...