马上就是2010级新生赛了,为了让帮助新生熟悉比赛,再次写出去年新生赛的题目题解,代码有些是我所写,也有孔牛的代码,可能有纰漏,请阅者见谅。
2600: 打印田字格
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 1640 | 281 | Standard |
淘气小孩abc上课总是走神,今天又是如此,老师决定好好惩罚他一下,决定罚他写田字格(囧)。可是abc的作业本都被他折成各种各样的纸飞机了飞的无影无踪了,他已经没有作业本了。所以他哭着闹着找了你去帮他。 你的任务很简单。根据给出的宽度。生成田字格。田字格有*和空格组成。 其中田字格的宽度n已经给出。
Input
输入由多组测试数据组成。每组测试数据一行。一个整数n。
Output
对于每组测试数据。首先输出一行。Case号。以下输出一个田字格。在每组测试数据后输出一个空行。
Sample Input
1 2
Sample Output
Case 1: ***** * * * ***** * * * ***** Case 2: ******* * * * * * * ******* * * * * * * *******
Problem Source: zzc
This problem is used for contest: 140 141
Submit / Problem List / Status / Discuss
2601: ICPC排行榜
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 89 | 13 | Standard |
Final终于要在哈尔滨举行了。在比赛进行了4个小时的时候会封榜。你就看不到排名了。abc非常想提前知道最终的排名。所以他弄到了队伍列表和提交记录。你的任务很简单。根据队伍列表和提交记录生成最终的排行榜。所有提交记录以时间序给出。注意:队伍列表中有些队伍的末尾带一个*,这些队伍是不参与排名的。但是你要把他们放在排行榜中正确的位置上。*不是队伍名的一部分。为了简化,队伍名都是符合C标识符规则的字符串。题目是从A开始编号的。返回状态为Yes的题目为通过。否则未通过。排名以ICPC标准,先以题数排序,然后以时间排序。弱相同,维持原顺序。排名相同。
Input
本题包含多组测试数据。你需要处理到结尾。每组测试数据包括:的一行n,m,t。表示队伍的数量、提交记录的数量和题目的数量。一下n行。每行一个字符串,包含可选的*表示一支队伍。以下m行。每行表示一个提交记录。包括队伍名,提交的时间,提交的题目,返回状态。
Output
对于每组数据。首先输出一行Case号。之后输出排行榜。的一行排行榜头。Rank(4列)空一列 Teamname(20列左对齐)空一列还有题目号每个占7列。居中。solv/att通过的题目数和总的提交次数。注意一道题目通过之后再提交不计入总的提交次数里。 以下下n列每列表示一个学校的状态。排序输出。即先输出第一名。。然后第二名。排名按照ICPC标准。即先以题数排序。然后以时间排序。时间为每道题的时间总和(第一次通过的时间+之前错误的次数*20)正确处理*的队伍。你的输出需要与排行榜头对齐。参见样例。在每组数据后输出一个空行。
Sample Input
4 6 5 hunters* hah acac dust hunters 4 A Yes hunters 8 B Yes hah 9 C Yes acac 9 C Yes hunters 90 C CE hunters 90 E TLE
Sample Output
Case 1: Rank Team Solved Time A B C D E att/sol ---- hunters* 2 12 1/4 1/8 1/--- 0/--- 1/--- 4/2 1 hah 1 9 0/--- 0/--- 1/9 0/--- 0/--- 1/1 1 acac 1 9 0/--- 0/--- 1/9 0/--- 0/--- 1/1 3 dust 0 0 0/--- 0/--- 0/--- 0/--- 0/--- 0/0
Problem Source: zzc
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2602: 斐波那契数列
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 899 | 214 | Standard |
abc的数学老师刚教了他们斐波那契数列。斐波那契数列数列的每一项是前两项的和。斐波那契数列的相邻两项之比趋近黄金分割虑。现在abc正在研究斐波那契数列的令一项性质。就是斐波那契数列的前n项和Sn。(斐波那契数列的前两项 fib[1]=1,fib[2]=1) abc需要知道一个整数sum大概是斐波那契数列的前多少项和。但是一个一个的算太麻烦了。不擅长变成的abc找到了你。记斐波那契数列的前n项和为Sn。给出一个整数Sum。求n使得S(n) <= Sum < S(n + 1) Sum在int范围内。
Input
本题有多组输入数据组成。每组数据为一个整数sum占一行。
Output
对于每组数据。首先输出一行Case号。下一行输出一个整数n。在每组数据之后输出一个空行。
Sample Input
3
Sample Output
Case 1: 2
Problem Source: zzc
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2603: 2012世界末日
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
10s | 65536K | 224 | 84 | Standard |
种种迹象表明,公元2012年为世界末日,而科学家们进一步预测,人类将被一种神秘的时空机器送到另一个宇宙,所以不要害怕,我们只是搬了个新家而已~
每一次改变都是一种进步,这个新的世界并不像我们的地球,不再有南方北方(不倒翁已为此头疼很久),不再有贫富贵贱,人们也不会再因为自己的长像头疼,因为同性别的人都变成了一个模样。当然,最大的不同是,人们发现这个世上的人并不只有男和女两种性别,性别种数变得不确定(想必找工作不会再有性别歧视了,大男子小女子的说法也将不复存在),还好人们保持了同性互斥,异性相吸的特性,只有不同性别的人才愿意走在一起。
十年后的一天,jlu的Boss:Dr.Lee想请ACM校队的成员一起吃个饭,注意这些成员的性别可能都已变化。可以肯定的是,校队的人数不会超过12,性别数不会超过10。Dr.Lee家里有一张长长的沙发,洽好能坐下所有学生(Dr.Lee一直在忙着做饭),JLU_ACMes都还正常,当然都希望坐在自己身边的人与自己不同性别。Dr.Lee是个数学爱好者,他很想知道一共有多少种坐法能够让自己的学生们都满意?但他意识到可能的种数会很多,想求助2009级的ACMer们~
现在已知这次参加聚餐的ACMers共有n种性别,每种性别的人数也已知,你的任务是,输出共有多少种入坐方案,使得相邻的ACMers异性。
例如: 3种性别时,有1个人性别是1,两个人性别是2,三个人性别是3,则共有以下10种方案:
1 3 2 3 2 32 3 1 3 2 3
2 3 2 3 1 3
3 1 2 3 2 3
3 1 3 2 3 2
3 2 1 3 2 3
3 2 3 1 2 3
3 2 3 1 3 2
3 2 3 2 1 3
3 2 3 2 3 1
Input
每行第一个数是ACMers的性别种数n(n<=10),接着的n个数分别表示各种性别ACMer的人数(总人数不超过12)。
Output
满足题设要求的方案数。
Sample Input
3 1 2 3
Sample Output
10
Problem Source: SongLijun
This problem is used for contest: 140 150
Submit / Problem List / Status / Discuss
2604: clever ACMer
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 329 | 177 | Standard |
近日Peter得了种怪病,一看课本就犯困,持续了一段时间后他的成绩直线下滑。Peter非常着急,于是去天机宫找神医homeboy,但是homeboy只给聪明人看病,只有通过考核才有资格被他医治。于是他给Peter出了一道题:给定两种操作+1 或 ×2 ,从1变到n所需要的最少操作数是多少? 作为一名ACMer,Peter没几分钟就做出了这道题,homeboy非常欣赏他,用其祖传的玄幻神针治好了Peter。自此,Peter又变回了以前那个好学的少年。 计算机前的你能做出来吗?
Input
输入一个整数n,n<=2^32-1,当n=0时,退出。
Output
输出从1变到n所需要的最少操作数。
Sample Input
1 2 3 15 176 0
Sample Output
0 1 2 6 9
Problem Source: hujiafeng
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2605: 字符串的值
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 647 | 190 | Standard |
ww是一个聪明的gg,可是他不喜欢英语却喜欢研究算法。他总说我是一个爱国的人所以不学英语,但是程序设计确实十分的有趣,他认为英文单词和一个字符串没有什么区别。 所以他根本不可能分辨一个句子。可是英语考试又是一个事实,所以他绞尽脑汁想出了一个方法去判断两个句子是否相同。 每个字符都有一个值。A-Z分别为1-26,不计大小写。其他字符为0。一个字符串的值就是一个字符串中所有字符的值的和。 当然,在abc眼中一个句子就是一个字符串。 他分辨两个句子的方法就是看两字符串(句子)的值是否相同。 你的任务不是分辨两个句子,而是求一个句子(字符串)的值。 句子中可能包含空格和标点。
Input
输入有多组测试数据组成。每个测试数据占一行。一个字符串。你需要处理到输入结束。
Output
对于每组测试数据。首先输出一行。Case号。之后一行输出一个整数,该字符串的值。在每组数据后输出一个空行。
Sample Input
abc a *
Sample Output
Case 1: 6 Case 2: 1
Problem Source: zzc
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2606: 星空
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 219 | 21 | Standard |
sky是一个喜欢浪漫的人,对浩淼的星空总是有无穷的幻想,每天晚上他都会在独院里听着music,欣赏着银河的璀璨,可是随着时间的的延续,他发现天空中的每颗星的亮度竟都是不同的。而且每一秒都在不停的闪烁,亮度总是不同,真是神奇的自然,他看到天上的n颗星辰,他记得爷爷曾经告诉他星星在第s初时的亮度分别为l[1][0]~l[n][0],每一秒,在同一时刻的同一瞬间,第n颗星的亮度增加m,第n-1颗星的亮度增加这个时候的第n颗星的亮度,第i颗星的亮度增加这个时候第i+1颗星的亮度,sky不禁感慨这世界的奇妙,这些所有的变化竟都恰恰集中在1s内完成,sky真想预言出ts末在璀璨的星空中,各颗星究竟是怎样的亮度
Input
输入由多组数据组成。每组数据包括:三个整数n, m, t (0 < n <= 50, 0 < t <= 10^9) n个整数l[1][0]~l[n][0]
Output
对于每组数据的一行输出Case号。之后输出n行,每行一个整数表示每颗星的亮度 模 2345的值每组数据之后输出一个空行。
Sample Input
3 1 3 1 2 3
Sample Output
Case 1: 35 17 6
Problem Source: zzc
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2607: Last time see you again
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
3s | 131072K | 80 | 8 | Standard |
大学的时光是值得怀念的,有多少事情珍藏在我们的记忆里,又有多少人我们一辈子都忘不掉。 123abc是一个不起眼的小男孩,他曾经在很多方面努力过,也经历了很多失败,在这些努力和失败中,他收获了自己的人生。 whx是123abc认识的一个女生,123abc很喜欢她,总是用各种方法想见到她,可是whx生气了, 她不想见到123abc,这令123abc很伤心。 whx明天就要离开吉林大学了,123abc想看她最后一眼,虽然whx不想看到不起眼的123abc,但是123abc只想看她最后一眼,内心默默祝福她。根据可靠线报,whx将从地点1出发,最后到达地点n (2<=n<=10000),然后离开长春,这是最后一次机会,123abc不想错过这次机会,于是他也得到了长春市的所有地形。每个地点被标号为1—n,其中1表示吉林大学,n表示火车站,其他表示长春市的其他地点,若两个地点有公交车或者轻轨直达,则之间有一条路(这是一个无向图,注意啊)。边数为m(0<=m<=400000). 123abc现在想知道,除了吉林大学和火车站,还有多少地方一定可以等到whx(因为地点1和n太明显了,whx会更生气的,还是邂逅比较好)。
Input
每组测试数据第一行n和m,接下来的m行每行两个数x,y(1<=x<=n,1<=y<=n),表示地点x和地点y是可以相互到达的。每组测试数据以空行结束。
Output
分为三种情况; 1.从1到n没有路,则输出Information Error! 2.从1到n的路都经过的点数(除了1和n)为0,输出Poor 123abc! 3.否则输出这样地点的个数
Sample Input
2 1 1 2 3 0 8 6 1 2 1 3 2 3 3 8 8 5 8 6
Sample Output
Poor 123abc! Information Error! 1
Problem Source: 123abc
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2608: 石子
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 131072K | 480 | 120 | Standard |
Xiao Tang和Xiao Jiang非常喜欢玩一种有趣的小游戏: 有N个石子,两人轮流从中取出1个, 3个或4个石子,当石子被取空时,游戏结束。最后一个取石子的人获胜, 第一次总是Xiao Tang取. 当然,他们俩都足够聪明,总会采取最优的策略。
Input
每行会有一个正整数N(N<=100000), 代表石子的个数, N=0 代表输入结束
Output
输出获胜人的名字。
Sample Input
1 2 0
Sample Output
Xiao Tang Xiao Jiang
Problem Source: homeboy
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2609: sequence
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
4s | 65536K | 112 | 21 | Standard |
有一个数列a[1], a[2], ..., a[n] (n>=3) 。每次可以从中任意挑出三个相邻的数 a[i-1], a[i], a[i+1] (i>=2), 进行如下操作: (a[i-1], a[i], a[i+1]) --> (a[i-1]+a[i], -a[i], a[i]+a[i+1]) 给定初始序列和目标序列,是否能够通过以上操作,将初始序列转化为目标序列?
Input
每个case的第一行有一个整数N(3<=N<=1000), 代表序列中数的个数第二行有N个整数代表初始序列第三行有N个整数代表目标序列 N=0代表输入的结束
Output
若能转换输出Yes, 否则输出No
Sample Input
3 0 0 0 1 1 1 6 1 6 9 4 2 0 7 -6 19 2 -6 6 0
Sample Output
No Yes
Problem Source: homeboy
This problem is used for contest: 140
Submit / Problem List / Status / Discuss
2610: grid
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
1s | 65536K | 155 | 52 | Standard |
百无聊赖寒假日,TY在家实在太无聊了, =___________=b, 他用一些1*1*1的小正方体积木堆出了一个a*b*c的长方体(a, b, c分别是长,宽,高) 为了不让TY太过无聊,JJX给他出了个有意思的题目: 这个长方体的"体对角线"——坐标化后从点(0, 0, 0)到点(a, b, c)的线段, 一共能穿过多少个小正方体?
Input
每行三个正整数a, b, c,代表长方体的长, 宽, 高。a, b, c均为 0 时代表输入结束
Output
穿过的小正方体的个数
Sample Input
1 1 1 2 3 4 0 0 0
Sample Output
1 6
Problem Source: homeboy
This problem is used for contest: 140
Submit / Problem List / Status / Discuss