0222 第 26 场 蓝桥月赛
0222 第 26 场 蓝桥月赛
T1. 好汤圆【算法赛】
问题描述
元宵节当天,汤圆们在锅里练习“仰泳”,边扑腾边喊:“浮起来才算熟!浮起来的汤圆才是好汤圆!”
此时路过的饺子冷冷吐槽:“醒醒,你连火都没开!”
汤圆老大听后不乐意了,反驳道:“哼,谁说一定要用火煮?我们这可是‘冰雪元宵’,用爱发电!” 饺子听后翻了个白眼,懒得理他,自顾自地走了。
过了会儿,一个肉丸子滚了过来,看着在冷水里努力扑腾的汤圆,疑惑地问:“你们在干嘛呢?”
汤圆老大得意洋洋地说:“我们在练习仰泳!等我们练成了绝世神功,就能浮起来了!”
肉丸子听后哈哈大笑:“你们就算练到天荒地老也浮不起来!想浮起来,得靠我!”
汤圆老大不服气:“你凭什么这么说?”
肉丸子神秘一笑:“我就是传闻中的‘热力丸’!我能让这锅水沸腾起来!” 说完,肉丸子“噗”的一声跳进了锅里。
已知锅里有 2025 个汤圆。肉丸子跳进去后,每分钟都会产生足够的热量使 15 个汤圆浮起来。
请问,肉丸子需要多少分钟才能让所有汤圆都浮起来?
输入格式
无。
输出格式
输出一个整数,表示肉丸子让所有汤圆浮起来所需的分钟数。
T2. 灯笼猜谜【算法赛】
问题描述
元宵节到了,小蓝决定参加村里举办的“元宵节触摸灯笼大赛”。比赛规则是这样的:
村里有 个灯笼,排成一排,编号从 到 。每个灯笼上都挂着一个谜语,小蓝需要按顺序进行猜谜语。比赛共有 个谜语,第 个谜语对应一个区间 ,表示小蓝可以选择触摸这个区间内的任意一个灯笼来猜这个谜语。
小蓝的手一开始放在第 个灯笼上(因为这是她的幸运数字)。为了猜谜语,她需要移动手去触摸灯笼。每次移动手,她都会感到“疲劳值”增加,疲劳值的计算方式是:如果她之前的手的位置是 ,现在要移动到位置 ,那么这次移动的疲劳值就是 。
小蓝的目标是猜完所有谜语,同时尽量减少总疲劳值。她不想让自己的手太累,因为猜完谜语后还要去吃汤圆呢!
小蓝想知道,猜完所有谜语后,她的最小总疲劳值是多少,请你帮他计算出答案。
输入格式
第一行包含两个整数 ,分别表示谜语的数量和灯笼的数量。
接下来 行,每行包含两个整数 ,表示第 个谜语对应的区间。
输出格式
输出一个整数,表示小蓝猜完所有谜语所需的最小总疲劳值。
样例输入
3 5
1 3
2 4
3 5
样例输出
2
说明
- 初始位置:。
- 猜第一个谜语:移动到 ,疲劳值为 。
- 猜第二个谜语:保持在 ,疲劳值为 。
- 猜第三个谜语:移动到 ,疲劳值为 。
- 总疲劳值为 。
T3. 元宵分配【算法赛】
问题描述
元宵节,一个象征着团圆与幸福的中国传统节日。在这一天,家家户户都会挂起五彩斑斓的灯笼,品尝美味的元宵。元宵,这种用糯米粉包裹着甜蜜馅料的圆滚滚的小点心,不仅美味,更承载着人们对美好生活的向往。
蓝桥村的村长为了庆祝这个重要的节日,特意煮了 碗元宵,准备分发给村民们。其中,第 碗元宵里有 颗元宵。村长原本计划将其中元宵数量较少的 碗分给村里的小朋友们,但这一决定却引起了小朋友们的不满。他们觉得这样的分配方式不公平,纷纷抱怨起来。
面对小朋友们的抗议,村长灵机一动,提出了一个有趣的挑战:“这样吧,我给你们一个机会,让你们通过自己的智慧获得更多的元宵。我会给你们一个整数 ,你们可以进行 次操作。在第 次操作中( 从 到 ),你们可以从区间 中选择两碗不同的元宵,将其中一碗的全部元宵倒入另一碗中。操作完成后,我仍然会将元宵数量较少的 碗分给你们。”
小朋友们听了村长的提议,一时之间有些摸不着头脑。他们纷纷将目光投向了村里最聪明的你,希望你能帮助他们计算出,通过这样的操作,他们最多能获得多少颗元宵。
输入格式
第一行输入两个整数 和 (,),分别表示元宵的碗数和村长给定的数字。
第二行输入 个整数 (),表示每碗元宵中的元宵数量。
输出格式
输出一个整数,表示小朋友们最多能获得的元宵数量。
样例输入
5 4
2 1 4 4 5
样例输出
3
说明
- 初始状态:。
- 将第 碗的元宵倒入第 碗,得到
- 最终,将元宵数量较少的 碗分给小朋友们,即第 碗和第 碗,总共获得 颗元宵。
T4. 摆放汤圆【算法赛】
问题描述
元宵节到了,老王家的汤圆摊前热闹非凡,顾客们排着长队等着品尝美味的汤圆。老王一边忙活,一边琢磨着怎么把汤圆摆得既好看又吉利。
老王家的汤圆盘是一个正方形的盘子,上面有 个格子,整齐地排列成 行 列的方阵。为了让顾客们眼前一亮,老王决定在盘子上摆放 个大汤圆。
不过,老王这人有点强迫症,摆汤圆得遵守几条规矩:
- 同一列的格子里不能放两个汤圆,不然会挤到。
- 同一行的格子里也不能放两个汤圆,不然会滚走。
- 最重要的是,为了体现元宵节的对称美,汤圆的摆放必须关于对角线(从左上到右下的直线)对称。对角线上的格子本身就满足对称性。
老王想了半天,也没算出来到底有多少种摆法。他挠了挠头,决定找你帮忙。现在,请你帮老王算算,满足这些条件的汤圆摆放方案数一共有多少种?由于答案可能很大,你只需要输出方案数对 取模后的结果即可。
输入格式
第一行包含一个整数 ,表示测试用例的数量。
接下来的 行,每行包含一个整数 (),表示盘子的大小。
输出格式
对于每个测试用例,输出一行,包含一个整数,表示满足条件的汤圆摆放方案数。由于答案可能很大,你只需要输出方案数对 取模后的结果即可。
样例输入
3
1
2
3
样例输出
1
2
4
T5. 元宵交友【算法赛】
问题描述
元宵节到了,小蓝决定举办一场热闹的交友活动,邀请她的朋友们一起赏灯、猜灯谜、吃汤圆!小蓝有 个朋友,每个朋友都有一个独特的“元宵节参与度”,用数字 来表示。参与度越高,说明这个朋友越喜欢元宵节的活动!
不过,小蓝的朋友们之间有一个有趣的“熟悉规则”:如果两个朋友的参与度相差太小(即 ),他们就会变得很熟悉,甚至会一起组队猜灯谜、抢汤圆!小蓝希望邀请尽可能多的朋友来参加活动,但她不希望被邀请的朋友之间太熟悉,否则活动可能会变得太热闹,甚至失控!
换句话说,如果小蓝邀请了一组朋友 ,那么对于这组朋友中的任意两个人 和 (),他们的参与度必须满足 。这样才能保证他们之间不会太熟悉,活动也能顺利进行。
小蓝现在想知道,对于每个可能的 (),她最多能邀请多少个朋友来参加活动,同时满足上述条件。
输入格式
第一行包含一个整数 (),表示小蓝的朋友数量。
第二行包含 个整数 (),表示每个朋友的参与度。
输出格式
输出 个整数,第 个整数表示当 时,小蓝最多能邀请多少个朋友。
样例输入
6
-1 4 3 8 4 -3
样例输出
5 4 3 3 3 2
说明
当 时,小蓝可以邀请所有朋友(除了重复的参与度),最多邀请 个朋友。
当 时,小蓝可以邀请 个朋友,比如参与度为 的朋友。
当 时,小蓝可以邀请 个朋友,比如参与度为 的朋友。
当 时,小蓝可以邀请 个朋友,比如参与度为 的朋友。
当 时,小蓝可以邀请 个朋友,比如参与度为 的朋友。
当 时,小蓝只能邀请 个朋友,比如参与度为 的朋友。
T6. 灯笼大乱斗【算法赛】
问题描述
元宵佳节,一场别开生面的灯笼大赛热闹非凡。 位技艺精湛的灯笼师依次落座,每位师傅都有相应的资历值,其中第 位师傅的资历值为 。从左到右,师傅们的资历值逐级递增(即 )。同时,每位师傅都带来了自己精心制作的灯笼,其亮度值依次为 。
大赛中,主持人会选择一个区间 (),让这个区间内的师傅们进行两两比拼,构成一场“灯笼大乱斗”。
比拼规则如下:假设在区间 中,由师傅 和师傅 ()进行对决。对决双方分别持有自己的灯笼。
- 如果师傅 的灯笼亮度 小于师傅 的灯笼亮度 ,则双方交换灯笼(相应地,如果 ,则不交换)。
- 双方最终的得分计算方式为:资历值 + 持有灯笼的亮度。得分高者获胜,得分相同则平局。
由于在比赛中,资历深的师傅输给资历浅的师傅,将会有损颜面。因此,为了避免这种情况发生,主持人需要选择必胜区间。
必胜区间定义:如果一个区间内任意两位师傅进行比赛,资历值高的师傅都必定能够获胜,则称该区间为必胜区间。
现在,请你帮主持人算算,必胜区间共有多少个?
输入格式
第一行包含一个整数 ,表示灯笼师傅的数量。
第二行包含 个整数 ,表示每位师傅的资历值,满足 。
第三行包含 个整数 ,表示每位师傅的灯笼亮度值。
输出格式
输出一个整数,表示必胜区间的总数量。
样例输入
3
1 3 5
3 4 1
样例输出
1