PTA拼题A2023跨年挑战赛

防疫打卡

		为了鼓励大家做好个人防护,某群开启了“防疫打卡”活动,群里最后一个被新冠病毒感染的群员将获得群主赠送的红包一个。

具体规则如下:

每天所有群员均需打卡,如有人未打卡视为退出活动(无获奖资格);
打卡为今日体温,体温 ≥ 37.5 °C 的失去获得红包的资格;
当打卡剩余最后一人时,无论该人状态如何都将自动获得红包,同一日打卡按给定的消息顺序计算,不打卡的排在最后。保证不会出现打卡人全部失去资格,且超过一人未打卡且仍有资格的情况。
当所有打卡结束后还有超过一人有获得红包资格,则红包平分给他们。
请你写程序完成这个活动的统计工作。

输入格式:
输入第一行为两个数 N,M(1≤N,M≤1000),表示群里有 N 人,活动有 M 条打卡记录。

接下来的 M 行,每行两个数 T i,A i ,B i,表示编号为 A 	i 的人在第 T i天的打卡体温为 B i。

编号、天数均从 1 开始,天数为不大于 1000 的正整数,编号不会超过 N,体温为 [35,41] 之间的一个一位小数,保证给出的打卡记录中天数是非递减的。

输出格式:
输出第一行为一个数,表示获得红包的人数。接下来的一行,按编号从小到大输出获得红包的人,用空格隔开(如有需要),注意首尾不要输出多余空格。

输入样例1:

5 10
1 1 37.4
1 2 36.8
1 3 37.2
1 5 36.5
2 1 38.0
2 3 37.5
2 5 37.0
3 1 38.5
3 2 37.2
3 3 37.5

输出样例1:

1
5

输入样例2:

5 11
1 1 37.4
1 2 36.8
1 3 37.2
1 5 36.5
2 1 37.4
2 3 37.5
2 5 37.0
3 5 37.1
3 1 37.3
3 2 37.2
3 3 37.5

输出样例2:

2
1 5

山口山

魔兽世界(World of Warcraft)简称魔兽,是由暴雪娱乐制作的一款大型多人在线角色扮演游戏。

魔兽世界的英文名字简称是 WoW,国内常简称为山口山,因为跟英文中语气词 wow 一致,所以在某些翻译软件中,以下句子:

Wow, it's very cool!
会被翻译为:

山口山,这太酷了!
这显然是不正确的。为了解决这一问题,你需要制作一个简单的软件,处理给定的英文文章中的所有的单词,将 WoW(区分大小写) 都替换成 World of Warcraft,然后统计其他的 wow(不区分大小写)的个数,方便翻译软件进一步使用。

输入格式:
输入一段英文文章,文章包含除了 $ 之外的全部 ASCII 可见字符。文章总长度不超过 10 
5
  个字符,且一定以 $ 结束。

输出格式:
输出第一行是一个数,为除了 WoW 之外所有形如 wow 的单词个数。其中单词的定义为用非大小写字母隔开的连续大小写字母。
接下来原文输出,但将所有 WoW 替换为 World of Warcraft。原文输出时不需要输出结束符 $。

输入样例:

Wow, such WoW, very cool!
wowWoWwowWow~$

输出样例:

1
Wow, such World of Warcraft, very cool!
wowWoWwowWow~

新年钟声

正常情况下,跨年的新年钟声一般是敲 12 下的。但因为大笨钟太灵了,以至于大家都想敲敲它,沾点福气,所以跨年的大笨钟到底会响多少声,就成了玄学……

百腾的小伙伴们发起了一个有奖竞猜,每人猜一个数字,猜得跟大笨钟真正被敲响的次数最接近的人,将赢得一份盲盒奖品。本题就请你帮助小伙伴们开奖。

输入格式:
输入在第一行给出一个正整数 n(≤10 
3
 ),是参与竞猜的人数。随后一行给出 n 个不超过 1000 的正整数,其中第 i 个数字是第 i 个人猜的数字(i=1,⋯,n)。再下面一行给出一串 dang,以一个 # 结束(题目保证不超过 1500 个 dang)。

输出格式:
在一行中输出中奖人的序号。如果有多人并列,按序号的增序输出,序号间以 1 个空格分隔,行首尾不得有多余空格。

输入样例:

10
18 8 36 128 6 27 16 666 888 2
dangdangdangdangdangdangdangdangdangdangdangdang#

输出样例:

2 7

机工士姆斯塔迪奥(复刻)

在 2022 年团体程序设计天梯赛上,L1 有一道名为机工士姆斯塔迪奥的题目,题目内容如下:

在 MMORPG《最终幻想14》的副本“乐欲之所瓯博讷修道院”里,BOSS 机工士姆斯塔迪奥将会接受玩家的挑战。

你需要处理这个副本其中的一个机制:N×M 大小的地图被拆分为了 N×M 个 1×1 的格子,BOSS 会选择若干行或/及若干列释放技能,玩家不能站在释放技能的方格上,否则就会被击中而失败。

给定 BOSS 所有释放技能的行或列信息,请你计算出最后有多少个格子是安全的。

众所周知最近情况比较困难,所以这次跨年挑战赛的出题人不能好好地出题了!于是出题人决定,把这道题放上来,稍微改改给大家再做一次。希望大家自己完成,不要去网上搜答案,否则会被取消获奖资格哟!

输入格式:
输入第一行是三个整数 N,M,Q (1≤N,M≤10 ^9 ,0≤Q≤10^5 ),表示地图为 N 行 M 列大小以及选择的行/列数量。接下来 Q 行,每行三个数 T i ,C i,D i ,其中 T i=0 表示 BOSS 选择的是若干连续行,T i=1 表示选择的是若干连续列,C i,D i为选择的行号/列号从 C i开始到 D i 结束。行和列的编号均从 1 开始,且 C i ≤D i 。

输出格式:
输出一个数,表示安全格子的数量。

输入样例:

5 5 3
0 2 2
0 3 4
1 3 3

输出样例:

8

小白兔拔萝卜

本题灵感来自于 2022 年底哈尔滨雪雕团队做的兔子拔萝卜造型。小白兔爱萝卜,但是它的力量有限,太大的萝卜它拔不动。于是它叫来了一群小伙伴……

本题就请你根据小白兔们的力量和拔出这个萝卜需要的力量,告诉小白兔,它最少需要哪些伙伴能拔出这只大萝卜。

输入格式:
输入在第一行里给出两个不超过 1000 的正整数 n 和 T,分别是小白兔的数量和拔出这个萝卜需要的力量。随后一行给出 n 个不超过 100 的正整数,其中第 i 个数对应编号为 i 的小白兔的力量(i=1,⋯,n)。

输出格式:
如果兔子们有可能拔成功,则首先在第一行输出最少需要多少只兔子才能拔出这只萝卜,然后第二行从小到大输出参与拔萝卜的兔子们的编号。编号间以 1 个空格分隔,行首尾不得有多余空格。

如果所有兔子合力都不能拔出萝卜,则首先在第一行输出 0,随后在第二行中输出:Suan4 le ba, hai2 cha4 X. 其中 X 是小白兔们缺少的力量值。注意:力量等于 T 是可以拔出萝卜的。

解可能不是唯一的,你只要随便输出一组就可以。

输入样例 1:

10 100
3 25 4 91 13 81 64 38 49 51

输出样例 1:

2
2 4

输入样例 2:

5 50
3 2 8 5 10

输出样例 2:

0
Suan4 le ba, hai2 cha4 22.

题目出自PTA,本人支是转载。
PTA链接:https://pintia.cn/problem-sets/dashboard

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值