程序设计实践

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.1035列车长的烦恼

Acceteped : 1041 Submit : 2348

Time Limit : 1000 MS Memory Limit : 65536 KB

Description

John是个小列车站的站长,每次列车在这里重新编组时他就很烦恼。因为站上只有一个人字形的编组轨道(如图),所有的列车车厢都是从人字轨的右边依次进去,从左边出来。但有一些编组顺序John总编不出来,John怀疑有些编组顺序是不可能完成的,可John又找不出那些是顺序是可以编组出,那些不可以。请你写一个程序帮助John辨别哪些编组可以完成,哪些不能完成。

输入:

第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例,每行为n+1个整数,第一个整数为n 表示有多少节车厢,后面n个整数表示需要编组成的顺序。比如说3节车厢,按照1,2,3依次入轨编组,可以在左边形成1 2 3,1 3 2,2 1 3,2 3 1,321。

输出:

每行输出一个测试用例的结果。如果可以编组输出Yes,否则输出No。

2

3 3 1 2

4 1 2 3 4

Sample Output

No

Yes

2.1036远古文明的算术题

Acceteped : 795 Submit : 1560

Time Limit : 1000 MS Memory Limit : 65536 KB

Description

考古人员发现地球在一亿年以前曾经存在一个高级文明叫做Delta,而且发现这个文明的具有文字和语言。经过艰苦卓绝的工作,专家们破译了其中的一些文字和表示方法。他们使用+表示加运算,-表示减运算,*表示乘运算,/表示整数除运算,%表示取模运算,但算术式的表示和我们不同,他们把要计算的数放到前面,运算符放在计算对象的后面,比如 1 2 + 表示 1+2, 1 12 + 3 4 + * 表示(1+12)*(3+4)。考古人员希望你帮助他们编写一个程序,计算出这些计算式的值。

输入:

第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例。每行为一个字符串(长度不超过200个字符),数和数,数和运算符,运算符和运算符之间分别用一个空格隔开,数都为非负整数,且小于或等于231-1。(所有计算式都符合计算规则,不会出现不可计算的计算式,且结果都为非负整数, 且小于或等于231-1)

输出:

每行输出一个测试用例的结果。使用一个字符串表示计算以后的结果。

2

1 2 +

1 1

2 +

3

4 + *

Sample Output

3

91

3.1037成对的字符串

Acceteped : 849 Submit : 1574

Time Limit : 1000 MS Memory Limit : 65536 KB

Description

有些字符串,如果满足下面的性质,则称为成对的字符串:

a. 所有的字符在字符串中出现偶数次

b. 每一对相同的字符之间不会有出现奇数次的字符

现在给你一些字符串,请判断这些字符串是否为成对的字符串。

输入:

第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例。每行为一个字符串(长度不超过1000个字符)。

输出:

每行输出一个测试用例的结果。如果是,输出Yes,否则输出No。

Sample Input

2

aAbbAaaabbcc

abcdefghijklmn

Yes

No

4.1038括号编码

Acceteped : 662 Submit : 1380

Time Limit : 1000 MS Memory Limit : 65536 KB

Description

S = s1 s2...s2n 是一个符合格式的括号的字符串,S能按下面两种方式编码:P编码:编码是一个整数序列P = p1 p2...pn,pi是第i个右括号之前的左括号的数目。

W编码:编码是一个整数序列W= p1 p2...pn,wi是第i个右括号的编码值,它等于这个右括号到与之匹配的左括号之间的右括号的数目(包括它自己)。

比如:

S ( ( ( ( ) ( ) ( ) ) ) ) P 4 5 6 6 6 6 W 1 1 1 4 5 6

请写一个程序将P序列转换成W序列。

输入:

第一行是一个整数K,表示有多少个测试用例,以后每两行一个测试用例。每个测试用例第一行为一个整数n(1 <= n <= 20),表示P序列长度,每个测试用例第二行n个非负整数,每个整数之间有一个空格分隔。

每行输出一个测试用例的结果。每行包括n个整数,每个整数之间用一个空格分隔。

Sample Input

2

6

4 5 6 6 6 6

9

4 6 6 6 6 8 9 9 9

Sample Output

1 1 1 4 5 6

1 1

2 4 5 1 1

3 9

5.1039恺撒的密码

Acceteped : 1000 Submit : 3167

Time Limit : 1000 MS Memory Limit : 65536 KB

Description

恺撒时代充满了动荡和危险,恺撒为了保证在战争中传递秘密消息,发明了一种密码。他在所有的信件中将所有的字符按字母顺序向后移动了5个位置(比如说,原文中是A,那么密信中就为F),密信中字母和原文中字母的对应关系如下:密文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

原文:V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

只有字母被替换,而且所有字母都是大写的。

输入:

第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例。每行为一个字符串(长度不超过1000个字符)。

相关文档
最新文档