545B. Equidistant String
输入两个只含有01的字符串,s,t
求一个字符串p使到s,t的距离一样
这里的距离是指对应位置:0-0的距离是0 ,o-1的距离是1 ,1-1的距离是0,1-0的距离是1
这里只要求找出满足条件的一个p既可以
对s,t相同位置一样的可以不考虑,因为这个是同时增加了p到两者的距离
下面就是只对相同位置不相同的情况考虑
交替的选取si,ti的位置的元素组成新的p
如果不相同的元素个数是偶数则这里的p满足条件,否则,不对头。
下面的java代码,p我定义成String类型,每次把要链接的si或ti链接起来,提交后 第三次测试数据运行时间超时,,,,,,,改成StringBuilder,就可以了。。。。。
Java代码:
import java.util.Scanner;
public class B545 {
static void run(){
Scanner sc = new Scanner(System.in);
char[] s= sc.next().toCharArray();
char[] t = sc.next().toCharArray();
StringBuilder p = new StringBuilder();
int count = 0;
boolean flag = false;
for(int i=0;i<s.length;i++){
char si=s[i];
char ti=t[i];
if(si == ti)
p.append(si);
else if(flag==false)
{
p.append(si);
count++;
flag = true;
}
else if(flag = true){
p.append(ti);
count++;
flag = false;
}
}
if (count%2==0)
System.out.println(p.toString());
else System.out.println("impossible");
}
public static void main(String[] args){
run();
}
}
Python程序
def B545():
s,t = raw_input().strip(),raw_input().strip()
count = 0
p=''
flag = False
for i in range(len(s)):
if s[i]==t[i]:
p+=s[i]
elif flag==False:
p+=s[i]
count+=1
flag =True
elif flag == True:
p+=t[i]
count+=1
flag =False
#print p
if count%2==0:
print p
else:
print 'impossible' if __name__=='__main__':
B545()
545B. Equidistant String的更多相关文章
- Codeforces Round #303 (Div. 2) B. Equidistant String 水题
B. Equidistant String Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/54 ...
- B - Equidistant String
B - Equidistant String Time Limit:1000MS Memory Limit:262144KB 64bit IO Format:%I64d & % ...
- 贪心 Codeforces Round #303 (Div. 2) B. Equidistant String
题目传送门 /* 题意:找到一个字符串p,使得它和s,t的不同的总个数相同 贪心:假设p与s相同,奇偶变换赋值,当是偶数,则有答案 */ #include <cstdio> #includ ...
- 周赛-Equidistant String 分类: 比赛 2015-08-08 15:44 6人阅读 评论(0) 收藏
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...
- Codeforces Round #303 (Div. 2) B 水 贪心
B. Equidistant String time limit per test 1 second memory limit per test 256 megabytes input standar ...
- Codeforces Round #303 (Div. 2)
A.Toy Cars 题意:给出n辆玩具车两两碰撞的结果,找出没有翻车过的玩具车. 思路:简单题.遍历即可. #include<iostream> #include<cstdio&g ...
- Educational Codeforces Round 121 (Rated for Div. 2)——A - Equidistant Letters
A - Equidistant Letters 题源:https://codeforces.com/contest/1626/problem/A 今天上午VP了这场CF,很遗憾的是一道题也没写出来,原 ...
- 透过WinDBG的视角看String
摘要 : 最近在博客园里面看到有人在讨论 C# String的一些特性. 大部分情况下是从CODING的角度来讨论String. 本人觉得非常好奇, 在运行时态, String是如何与这些特性联系上的 ...
- JavaScript String对象
本编主要介绍String 字符串对象. 目录 1. 介绍:阐述 String 对象的说明以及定义方式. 2. 实例属性:介绍 String 对象的实例属性: length. 3. 实例方法:介绍 St ...
随机推荐
- c/c++常用代码--string trim
typedef std::basic_string<TCHAR> tstring; inline static void trim(tstring& s){ s.erase( ...
- Pintos修改优先级捐赠、嵌套捐赠、锁的获得与释放、信号量及PV操作
Pintos修改优先级捐赠.嵌套捐赠.锁的获得与释放.信号量及PV操作 原有的优先级更改的情况下面没有考虑到捐赠的情况,仅仅只是改变更改了当前线程的优先级,更别说恢复原本优先级了,所以不能通过任何有关 ...
- spring mvc官网下最新jar搭建框架-静态资源访问处理-注解-自动扫描
1.从官网下载spring相关jar http://spring.io/projects 点击SPRING FRAMEWORK
- 查mysql字段中的数字记录
select * from a where nameregexp '^[0-9]+$' ;
- 20145129 《Java程序设计》第6周学习总结
20145129 <Java程序设计>第6周学习总结 教材学习内容总结 InputStream与OutStream 串流设计的概念 输入串流代表对象为java.io.InputStream ...
- postmortem report of period M1
一.设想和目标 1.我们的软件主要要解决学长设计的学霸系统中视频及文档的浏览功能问题. 2.时间相对充裕.不过对于我们这些零基础的人来说还是比较困难. 3.我们团队中不同意见通常会进行进一步讨论,说出 ...
- windows 2008 下C#调用office组件访问拒绝的解决方法(failed due to the following error: 80070005 拒绝访问)
"组件服务"- >"计算机"- >"我的电脑"- >"DCOM配置"->找到word->属 ...
- 浏览器不支持HTML5
有些浏览器并不支持HTML5中的新增元素,如IE8或更早版本.想要应用样式,可以头部标记<head>中加入下面JavaScript代码 <html> <head> ...
- 利用doScroll在IE浏览器里模仿DOMContentLoaded
稍微了解一点框架的事件绑定的都知道 window.onload 事件需要在页面所有内容(包括图片.flash.iframe等)加载完后,才执行,但往往我们更希望在 DOM 一加载完就执行脚本,而各大框 ...
- 【BZOJ】【1293】【SCOI2009】生日礼物
二分/堆 求一个最小的区间使得包含所有的颜色(并不一定只出现一次)$n\leq 10^6$ 我想的做法是:二分这个最小的长度(满足单调性……好久才想到QAQ),然后O(n)判断是否有可行的区间,这一步 ...