本次由湖南科技大学计算机协会承办的程序设计新生快乐赛,我主要是担任出题&管理比赛的任务。

题解ppt

【Google Drive】2021年计算机协会新生快乐赛题解.pptx

【腾讯文档】2021年计算机协会新生快乐赛题解.pptx

std&数据压缩包

【Google Drive】新生快乐赛std&数据.zip

【百度网盘】新生快乐赛std&数据.zip

提取码: 42vb

题目

A.掉进兔子洞

题目背景

掉呀,掉呀,掉呀,往下掉个没完啦!

我一定离地心不远了

我算算,我现在离地面应该几英里?

题目描述

凭借学过的知识,爱丽丝知道地球半径为RR(单位:英里)。她用眼睛观察到她离地心还有HH(单位:英里)。爱丽丝想让你帮忙算算她现在距离地面多少英里?

输入描述

一行由一个空格分割的两个整数RRHH

输出描述

一个整数AA,表示爱丽丝现在离地面还有多少英里

输入样例1

3950 4000

输出样例1

50

输入样例2

3950 0

输出样例2

3950

数据范围

0R,H1000000\le R,H\le100000

B. 柴郡猫

题目背景

那猫看见爱丽丝只是咧着嘴笑

“柴郡猫咪,劳驾,请您告诉我,从这儿我该走那条路?”

"那边,住着一个帽匠。而那边,住着一只三月兔。随你拜访谁都行,他两都是疯子"

"我可不想到一群疯子中间去"

"噢,这你可没办法了,我们这全是疯子。我是疯子,你也是疯子。"

img

"你怎么知道我是疯子?"

"你肯定是,要不你不会到这来。"

"你又怎么知道你疯了?"

题目描述

柴郡猫认为一个数是疯子当且仅当它的十进制表达中的每个位之积为质数(0,1不是质数)

比如13是疯子,因为13=31*3=3,3是个质数

柴郡猫想要知道nn位数(包含前导零)中有多少个疯子

比如2位数包含以下数字{xZ0x99}\{x\in Z|0\le x\le 99\}

输入描述

一个整数nn表示柴郡猫想要知道的nn位数

输出描述

nn位数中有多少个疯子

输入样例1

1

输出样例1

4

数据范围

1n1041\le n \le 10^{4}

正在做梦的你呀,你好。
用那年幼的双瞳好好看看我。
世界的一切都那么模糊,
整个世界又是如此温柔,
所有人都是好朋友。
连天空中的浮云都是棉花糖!
明亮的双眸一定照亮了你的世界吧。

C. Great Endless Border,an Eternal Golden Braid

题目背景

程序设计与递归:模块性、循环、过程

编写计算机程序的一个基本技术,是把任务自然地分解成子任务。这要求人们看出两个过程在某种扩展了的意义上—―这将导致模块性概念——是同一的。比如,某人可能想让一系列类似的操作一个接一个地执行。不必把它们都写出来,可以写一个循环,告诉计算机执行一套操作之后再回过来重新执行它们,一遍又—遍地这么做,直到某个条件被满足。循环体―—要重复的那套固定指令——实际上无需完全确定,可以以某种可预知的方式有所变化。

乌龟:你得一直跑,跑到天堂

阿基里斯:饶了我吧,为什么我得跑到天堂

乌龟:因为你跑到天堂,我才能得到你的灵魂,有了你的灵魂才能让你成神,成神你才能追上我,你才能嬴

阿基里斯:我想追上你,那我怎么才能跑到天堂乌龟:去东边的黄金国,找一个叫印宗法师的人,他会带你去天堂

—生二,二生三,三生万物。

万物生三,三生二,二生一。

题目描述

爱丽丝有一个从1开始编号,长度为nn的数列{a}\{a\}。爱丽丝想知道这个数列有多少个不同的区间[l,r][l,r],满足区间上所有数字和(即i=lrai\sum_{i=l}^ra_i​)是质数。

我们称两个区间[l1,r1][l_1,r_1][l2,r2][l_2,r_2]不同当且仅当l_1\neq l_2 \or r_1\neq r_2\or表示或)。

比如对于数列{1,2,3,4}\{1,2,3,4\},满足条件的区间分别是[2,2],[3,3],[1,2],[2,3],[3,4][2,2],[3,3],[1,2],[2,3],[3,4]。区间上所有数字和分别是2,3,3,5,72,3,3,5,7,都是质数。共5个,答案即5。

输入描述

第一行一个整数nn

第二行nn个用空格分开的整数aia_i

输入描述

一个整数,满足条件的区间数量

输入描述1
4
1 2 3 4
输出样例1
5
输入样例2
10
1 1 1 1 1 1 1 1 1 1
输出样例2
27
数据范围

1n1031\le n\le 10^3

1ai1021\le a_i\le 10^2

D.红桃王后

题目背景

"这是谁?"

"白痴!""你叫什么名字,孩子?"

"禀告殿下,我叫爱丽丝"。嗨,归根到底,他们不过是一副纸牌。我用不着怕他们!

爱丽丝升格立绘.png

"这几个是什么人?"

"我怎么知道""这不关我的事"

"砍掉她的头!砍——"

"胡说!"

image-20211102153428317

"考虑一下吧,我亲爱的,她不过是个孩子!"

"哎,叫他们翻过来。"

题目描述

为了平息红桃王后的愤怒,国王决定给红桃皇后展示一场扑克牌士兵的表演——将扑克牌士兵搭成扑克塔。

国王觉得爱丽丝很勇敢。于是想考验一下爱丽丝,他向爱丽丝问一个nn层扑克塔中包含有多少张扑克牌士兵。

如图所示,一个3层扑克塔中包含有15张扑克牌士兵。

image-20211102210741386

nn层扑克塔包含有多少张扑克牌士兵。

输入描述

一个整数nn

输出描述

一个整数即nn层扑克塔包含的扑克牌士兵数量

输入样例1

3

输出样例1

15

输入样例2

1

输出样例2

2

数据范围

1n2×1041\le n\le 2\times 10^4

E.Help Alice

题目背景

alice

经过转移事件,Alice和Rudius一起被转移到了魔大陆,这是Alice第一次被迫离开老家。

没有了爷爷的庇护,Alice也开始了害怕。但还好有Rudius陪伴,Alice才没那么孤单。

她们两人还和斯佩路德族的Raj Luther相遇,组成了三人的冒险者小队「Dead End」

Dead end

经过无数次冒险,Alice渐渐发现了自己对Rudius的感情,但Alice也意识到自己无法保护Rudius。

相较于Rudius和Raj Luther,Alice太弱了。

Alice想变得更强,去守护Rudius、去成为站在他身边保护他的人。

于是她决定离开Rudius,和Kireno前往剑之圣地修行。

题目描述

某一天,Kireno要求Alice去击败Dragon突破自己的极限。

Alice和Dragon都有两个属性HPMP。Kireno要求Alice只能与Dragon战斗mm回合。如果战斗超过了mm回合,或者爱丽丝的HP小于等于00意味着爱丽丝失败。Alice是个完美的人,她认为自己和Dragon的HP同时归零也是自己失败。

Alice和Dragon都有nn个可以重复使用的消耗mim_iMP扣除对方did_iHP的技能。每一个回合,Alice和Dragon都会同时发动技能。如果当前想要发动第ii个技能,但是MP小于mim_i时,不能发动此技能。

Alice是一个成长性很高的人,每一个回合结束后她的MP上限会提升pp并恢复所有MP。Dragon则没有恢复MP的手段。

Dragon比较简单,Alice已经摸透了Dragon的技能释放顺序:第ii个回合释放编号为sis_i的技能。如果Dragon当前的技能因MP不足无法发动,则Dragon本回合啥也不会干。

Alice可以规划自己的技能释放,但是Alice也不太聪明只想知道她能不能赢。为此她问你不回答就把你打晕是否存在一个技能释放顺序使得Alice可以击败Dragon。

输入描述

第一行为空格分开的两个整数hpA,mpAhpA,mpA,代表Alice的HP,MP

第二行为空格分开的两个整数hpD,mpDhpD,mpD,代表Dragon的HP,MP

第三行为空格分开的三个整数n,m,pn,m,p,代表Alice和Dragon的技能数、回合数和每回合MP提升量。

接来下nn行,每行为空格分开的两个数字mAi,dAimA_i,dA_i,代表Alice第ii个技能的MP消耗和伤害。

再接着nn行,每行为空格分开的两个数字mDi,dDimD_i,dD_i,代表Dragon第ii个技能的MP消耗和伤害。

最后输入mm行,每行为一个数字sis_i,代表Dragon第ii个回合释放第sis_i个技能。

输出描述

若Alice能够击败Dragon,则输出Yes,否则输出No

输入样例1

100 100
100 100
2 4 10
50 50
25 30
80 80
10 15
2
2
2
1

输出样例1

Yes

第一回合Alice释放2技能,对Dragon造成30伤害;Dragon释放2技能对Alice造成15伤害。

第二回合Alice释放1技能,对Dragon造成50伤害;Dragon释放2技能对Alice造成15伤害。

第三回合Alice释放2技能,对Dragon造成30伤害;Dragon释放2技能对Alice造成15伤害。

Alice剩余55血,Dragon死亡,Alice击败了Dragon

输入样例2

100 100
100 100
2 4 10
50 50
25 30
80 90
10 15
1
2
1
1

输出样例2

No

不存在任何方案爱丽丝能击败Dragon

输入样例3

100 30
100 100
2 4 70
100 75
25 30
80 90
10 15
1
1
2
1

输出样例3

Yes

第一回合Alice释放2技能,对Dragon造成30伤害;Dragon释放1技能对Alice造成90伤害;

第二回合Alice释放1技能,对Dragon造成75伤害;Dragon的MP不足,不能释放1技能。

Alice剩余10血,Dragon死亡,Alice击败了Dragon

数据范围

1hpA,hpD,mpA,mpD1041\leq hpA,hpD,mpA,mpD \leq 10^4

1n,m1001\leq n,m \leq 100 \\

1mAi,dAi,mDi,dDi,p1041\leq mA_i,dA_i,mD_i,dD_i,p \leq 10^4

F.For Alice

题目背景

爱丽丝游戏是争夺彼此蔷薇圣母的游戏

输的人会变成不能动也不能说话的人偶

赢的人就能朝"爱丽丝"更进一步

这就是我们蔷薇少女注定的命运

image-20211030020451347

"Turing Test Passed"

「确实如此……完全就是Alicization计划的结晶啊……」

这么说起来——拉斯致力于高适应性人工智能的实现。这个计划取每个单词的首字母就是A.L.I.C.E.。而作为这个计划完成体的少女,在Under World中也就被授予了爱丽丝的名字而成长起来,这种结果岂不是太过巧合了?

如果不是巧合的话,那这里面还有什么样的理由呢。就像柳井一样,是因为拉斯的哪个工作人员秘密干涉内部的结果吗?还是……在工作人员以外唯一一个进入了Under World的他……

image-20211030021550631

一切的可能性

如今仍只是在

不确定的光之彼岸

微微摇动

荡漾不息

题目描述

在有nn个玩偶参加的爱丽丝游戏中,第ii个玩偶有两个属性:好奇值xix_i和勇敢值yiy_i。我们称一个玩偶jj比另一个玩偶ii普通当且仅当玩偶jj好奇值小于玩偶ii的好奇值且玩偶jj勇敢值小于玩偶ii的勇敢值(即x_i>x_j\and y_i>y_j)。我们称玩偶jj特殊当且仅当不存在玩偶ii,使得玩偶jj比玩偶ii普通

求所有特殊玩偶的数量。

输入数据保证对于任意的两个输入顺序相邻的玩偶,先输入玩偶的好奇值小于等于后输入玩偶的好奇值。

输入描述

第一行一个正整数nn表示玩偶的数量

nn行,第1+i1+i行,每行用空格分开的两个正整数xi,yix_i,y_i表示玩偶的属性

输出描述

一行,所有特殊玩偶的数量

输入样例1

6
1 2
1 4
2 2
2 3
3 1
3 1

输出样例1

5

五个玩偶,他们的属性值分别为(1,4)(2,3)(3,1)(2,2)(3,1)(1,4)(2,3)(3,1)(2,2)(3,1)

输入样例2

4
1 2
2 3
3 4
4 5

输出样例2

1

数据范围

1n1061\le n\le 10^6

1xi,yi1001\le x_i,y_i\le100

梦境过后的你呀,再见。
用那老去的双瞳好好看看我。
世界的一切都那么明确,
整个世界又是如此残酷,
所有人都是疲倦的路人。
就连棉花糖都只是污浊的烟雾!
光辉的世界应该会照亮你的眼睛吧。

G.Remember

题目背景

"Wake up, Alice dear!"

"Why, what a long sleep you’ve had!"

"Oh, I’ve had such a curious dream!"

仙境.png

仙境只是童话之国。

童话的文字是梦之摇篮。

根本不值一文。

有效期限不足十年。

迟早将要消逝的甜美记忆。

但也仍为必要的甘甜痛楚。

image-20211030204049644

最后,她自己想象着她的这位小妹妹,日后将成为一个成熟的女人;她如何在成年的岁月中保持她童年时代那颗纯朴的爱心,如何把别的孩子们召集到自己身旁,用许多奇妙的故事,也许就是这个多年以前的梦中奇境,使孩子们的眼里充满了快乐和渴望,同时感受他们单纯的忧愁,享受他们天真的快乐,回忆着自己的童年和那些幸福的夏日。

题目描述

爱丽丝和她的姐姐已经在森林里玩了太久了,再不回家魔女就要过来抓小孩子了!

地图上这片森林被划分成 n×mn \times m 个区域,每个区域是以下三种区域的一种:障碍物;空地;长有蘑菇的空地。分别用X,OM来表示。

爱丽丝可以上下左右移动,无法进入障碍物区域,但是空地和长有蘑菇的空地可以自由行走。

从上到下为x轴正方向,从左到右为y轴正方向,区域从1开始编号,爱丽丝现在在(ux,uy)(u_x,u_y)区域,家在(vx,vy)(v_x,v_y)区域。保证(ux,uy)(u_x,u_y)(vx,vy)(v_x,v_y)为空地。

爱丽丝体力有限,一次最多只能走kk个区域。但是森林中有些好吃的蘑菇,爱丽丝走到带有蘑菇的空地可以吃掉蘑菇回复满体力,之后还可以再跑kk个区域。

因为爱丽丝胃口很小,也没带什么能装蘑菇的东西。所以爱丽丝不能带走这些蘑菇,一块空地上的蘑菇也吃不完。

求爱丽丝抵达家的最短路径长度。

输入描述

第一行用空格分开的三个整数n,m,kn,m,k

第二行四个空格分开的整数ux,uy,vx,vyu_x,u_y,v_x,v_y

接下来nn行,每行mm个字符表示地图

输出描述

一行一个整数,爱丽丝抵达家的最短路径长度。如果不能抵达,则输出1-1

输入样例1

1 10 2
1 1 1 10
OMMOMOMOMO

输出样例1

9

输入样例2

3 4 1
1 1 3 4
OMMM
MXMM
MMOM

输出样例2

5

输入样例3

3 4 2
1 1 3 4
OOMX
OXOO
MOOO

输出样例3

-1

数据范围

2n,m1022\le n,m\le10^2

1k101 \le k \le10

即使忘了书本的内容,
千万不要忘了那夹在了梦中的书签。

H.疯狂的茶会

题目背景

"你没被邀请就自己坐下了,也太不礼貌了"

"我不知道这是你的桌子,再说桌子放在这儿可以坐好多人呢,可不止三个"

img

“今天是这个月的几号?”

"四号。"

"差了两天,我告诉你不能用黄油涂标的零件。"

"那是最好的黄油了。"

"不错,但是肯定也弄进去面包渣了。你不应该用面包刀给表加油。"

"这表多好玩,只报日期,不报钟点。"

"报钟点儿干嘛,你的表报年份吗?"

"当然不啦,但那是因为在同一个年份里要过很长时间"

"我的表不报钟点儿也正是这个原因"

image-20211026224029904

和我一同踏上一段能够永远进行下去的寻宝之旅吧。虽然没有终点, 但宝物是切实存在的

我想成为你的宝物。想成为这场没有尽头的寻宝之旅中,你所能找到的宝物

你能寻找我、并找到我吗.....?

对不起,问了你一个奇怪的问题

认真观赏烟花吧

毕竟,这将是我们在这个世界里看到的,最后一场烟花了

题目描述

mm天里这座城市每隔一天放一次烟花,第ii天放的烟花的美丽值为aia_i,米娅将选定几天跟平良看烟花,烟花的美丽值需要满足后面放的烟花的美丽值严格小于前面放的烟花美丽值。现在米娅想知道平良看到烟花的美丽值之和最大是多少?

输入描述

第一行一个整数mm表示有mm

第二行有mm个空格分开的整数,第ii个整数表示aia_i

输出描述

一个整数,表示平凉所看到的烟花的美丽值之和的最大值

输入样例1

5
5 4 3 2 1

输出样例1

15

可以选定所有5天看烟花

输入样例2

6
3 4 2 3 5 1

输出样例2

8

选中第2,4,6天看烟花,对应的美丽值为4,3,1,总和最大

数据范围

1n201 \le n\le 20

1ai201\le a_i\le 20

故事将永远持续下去。
用纤细的手指翻回第一页,
或是拿起第二卷。
只要悲伤的读者继续抗拒现实