模拟赛SXJ202508030900题目
包包的牛奶调配
问题描述
农业,尤其是生产牛奶,是一个竞争激烈的行业。包包发现如果他不在牛奶生产工艺上有所创新,他的乳制品生意可能就会受到重创!
幸运的是,包包想出了一个好主意。他的三头获奖的乳牛,小强、小美和小帅,各自产奶的口味有些许不同,他打算混合这三种牛奶调制出完美的口味。
为了混合这三种不同的牛奶,他拿来三个桶,其中分别装有三头奶牛所产的奶。这些桶可能有不同的容积,也可能并没有完全装满。然后他将桶 \(1\) 的牛奶倒入桶 \(2\),然后将桶 \(2\)的牛奶倒入桶\(3\),然后将桶\(3\)中的牛奶倒入桶\(1\),然后再将桶\(1\)的牛奶倒入桶\(2\),如此周期性地操作,共计进行\(100\)次(所以第\(100\)次操作会是桶\(1\)倒入桶 \(2\))。当包包将桶\(a\)中的牛奶倒入桶\(b\) 时,他会倒出尽可能多的牛奶,直到桶\(a\) 被倒空或是桶\(b\)被倒满。
请告诉包包当他倒了\(100\)次之后每个桶里将会有多少牛奶。
输入格式
- 第一行输入包括\(2\)个数,分别表示第一个桶的容积\(c_1\),以及第一个桶里的牛奶量\(m_1\)。
- 第二行输入包括\(2\)个数,分别表示第二个桶的容积\(c_2\),以及第二个桶里的牛奶量\(m_2\)。
- 第三行输入包括\(2\)个数,分别表示第三个桶的容积\(c_3\),以及第三个桶里的牛奶量\(m_3\)。
所有输入数值均为正,并且不超过\(10^9\)。
输出格式
- 输出三行,给出倒了\(100\)次之后每个桶里的牛奶量。
样例数据
样例输入&1
10 3
11 4
12 5
样例输出&1
0
10
2
样例解释&1
在这个例子中,每倒一次之后每个桶里的牛奶量如下:
- 初始状态:
3 4 5 - 桶 \(1->2\):
0 7 5 - 桶 \(2->3\):
0 0 12 - 桶 \(3->1\):
10 0 2 - 桶 \(1->2\):
0 10 2 - 桶 \(2->3\):
0 0 12
(之后最后三个状态循环出现……)
数据范围与约束
- \(1≤c_i,m_i≤10^9\) (\(i=1,2,3\))
包包的猜测游戏
问题描述
小强和包包厌倦了他们的猜数字游戏,决定玩一个"猜动物"的新游戏。
游戏开始时,小强会想好一种动物(通常是牛,但偶尔也会想其他动物)。包包通过提问来猜测这个动物,每个问题询问该动物是否具有某个特定特征,小强回答"是"或"不是"。
如果将所有符合当前回答特征的动物集合称为"可行集",包包会持续提问直到可行集只剩一种动物。对于每个问题,包包会选择某个特征提问(即使不能缩小范围),且不会重复询问同一特征。
给定所有动物及其特征,求包包在猜出正确答案前可能得到的"是"回答的最大数量。
输入格式
- 第一行输入\(1\)个数\(N\),表示动物数量
- 接下来\(N\)行,每行描述一种动物:
- 首先输入动物名称(不超过\(20\)个小写字母)
- 接着输入\(1\)个数\(K\)表示特征数量
- 最后输入\(K\)个特征(每个不超过\(20\)个小写字母)
输出格式
- 输出\(1\)行,表示可能得到的"是"回答的最大数量。
样例数据
样例输入&1
4
bird 2 flies eatsworms
cow 4 eatsgrass isawesome makesmilk goesmoo
sheep 1 eatsgrass
goat 2 makesmilk eatsgrass
样例输出&1
3
样例解释&1
包包:“这种动物是能飞的吗?”
小强:“不是。”
包包:“这种动物是eatsgrass的吗?”
小强:“是。”
包包:“这种动物是能makesmilk的吗?”
小强:“是。”
包包:“这种动物是会goesmoo的吗?”
小强:“是。”
包包:“这样的话我想这种动物是cow。”
小强:“猜对了!”
对于样例一:如上段的对话,包包可能在对话中获得\(3\)个“是”的回答,并且不可能进行包含超过\(3\)个“是”的回答的对话。
数据范围与约束
- \(2≤N≤100\)
- \(1≤K≤100\)
- 所有字符串长度不超过\(20\)个字符
- 保证没有两种动物具有完全相同的特征组合
包包的邀请赛
问题描述
包包要举办一场编程竞赛,他需要邀请一些学生参加。在学生们的学习小组中,存在若干个学习团队。对于每个学习团队,如果包包已经邀请了其中\(k−1\)名学生,那么最后剩下的那名也必须被邀请。已知$1号学生已经被邀请,请计算包包最少需要邀请多少名学生。
输入格式
- 第一行输入\(2\)个数,分别表示学生总数\(N\)和学习团队数量\(G\)。
- 接下来\(G\)行,每行先输入\(1\)个数\(k\) 表示该团队的人数,随后输入\(k\)个数表示该团队包含的学生编号。
输出格式
- 输出\(1\)行,表示最少需要邀请的学生数量。
样例数据
样例输入&1
10 4
2 1 3
2 3 4
6 1 2 3 4 6 7
4 4 3 2 1
样例输出&1
4
样例解释&1
初始邀请\(1\)号学生。
- 由第一个团队\([1,3]\):已邀请\(1\),则必须邀请\(3\)。
- 由第二个团队\([3,4]\):已邀请\(3\),则必须邀请\(4\)。
- 由第四个团队\([4,3,2,1]\):已邀请\(1,3,4\)(\(3\)个),而团队大小为\(4\)(即\(k=4\)),所以当已邀请\(3\)(即\(k-1\))个时,剩下的\(2\)必须被邀请。
因此,总共邀请了学生\(1,2,3,4\),共\(4\)人。
注意:第三个团队\([1,2,3,4,6,7]\)在邀请过程中没有被触发,因为始终没有达到\(5\)个被邀请。
数据范围与约束
- \(1≤N≤10^6\)
- 所有学习团队的人数之和\(M\)满足\(1≤M≤2.5×10^5\)
- 保证输入数据合法,且\(1\)号学生初始已被邀请
包包的假期兼职
问题描述
包包暑假期间想通过做包子兼职来赚零花钱。现在有\(N\)个包子订单,第 ii 个订单如果接受的话,需要在\(A_i\)天后才能收到\(B_i\)元的报酬。
包包每天最多只能接一个订单,而且每个订单只能接一次。
请帮包包计算,从现在开始到\(M\)天后(包括第\(M\)天)最多能赚到多少钱。
注意:包包可以从今天就开始接订单哦!
输入格式
- 输入给出订单信息:
- 第一行包含两个数\(N\)、\(M\) ,表示订单数量和天数限制
- 接下来\(N\)行,每行由两个数,分别表示该订单完成后赚钱所需的时间以及能赚多少钱。
输出格式
- 输出包包最多能赚到的钱数。
样例数据
样例输入&1
3 4
4 3
4 1
2 2
样例输出&1
5
样例解释&1
最优接单方案:
- 今天接第\(1\)个订单(\(4\)天后获得\(3\)元)
- 明天接第\(3\)个订单(\(2\)天后获得\(2\)元) 总共可以获得\(3+2=5\)元
样例输入&2
1 1
2 1
样例输出&2
0
样例解释&2
因为订单需要\(2\)天才能完成,但总共只有\(1\)天时间,所以赚不到钱。
样例输入&3
5 3
1 2
1 3
1 4
2 1
2 3
样例输出&3
10
数据范围与约束
- \(1≤N≤10^5\)
- \(1≤M≤10^5\)
- \(1≤A_i≤10^5\)
- \(1≤B_i≤10^4\)
包包的品尝计划
问题描述
有\(N\)个排成一排的包子铺,编号从\(1\)到\(N\)。包包想从第\(1\)家包子铺开始品尝包子,最终到达第\(N\)家包子铺。
包包有一个特殊的品尝规则:给定\(K\)个互不重叠的区间\([L_1,R_1],[L_2,R_], ..., [L_K,R_K]\),它们的并集记为\(S\)。当包包在第\(i\) 家包子铺时,他可以选择\(S\) 中的任意一个整数\(d\),然后直接跳到第\(i+d\)家包子铺品尝(但不能跳过第\(N\) 家)。
请你计算包包从第\(1\)家包子铺到达第\(N\)家包子铺的所有可能路线数量,结果对\(998244353\)取模。
输入格式
- 第一行输入\(2\)个整数\(N\)和\(K\)
- 接下来\(K\)行,每行输入\(2\)个整数\(L_i\)和\(R_i\),表示一个区间
输出格式
- 输出包包到达第\(N\)家包子铺的方案数,对\(998244353\)取模。
样例数据
样例输入&1
5 2
1 1
3 4
样例输出&1
4
样例解释&1
- 可选的跳跃距离\(S={1,3,4}\),有以下\(4\) 种路线:
- \(1→2→3→4→5\)
- \(1→2→5\)
- \(1→4→5\)
- \(1→5\)
样例输入&2
5 2
3 3
5 5
样例输出&2
0
样例解释&2
\(S={3,5}\),无法从第\(1\)家跳到第\(5\)家。
样例输入&3
5 1
1 2
样例输出&3
5
样例输入&4
60 3
5 8
1 3
10 15
样例输出&4
221823067
数据范围与约束
- \(2≤N≤2×10^5\)
- \(1≤K≤min(N,10)\)
- \(1≤Li≤Ri≤N\)
- 所有区间互不重叠
- 输入均为整数
包包的数数游戏
问题描述
包包最近在学习数数游戏。现在他想知道在\(1\)到\(N\)的所有整数中(包括\(N\)),有多少个数字恰好包含\(K\)个非零的数字?
比如数字"\(100\)"有\(1\)个非零数字(\(1\)),"\(25\)"有\(2\)个非零数字(\(2\)和\(5\))。
输入格式
- 第一行输入\(2\)个整数\(N\)和\(K\)
- 接下来\(K\)行,每行输入\(2\)个整数\(L_i\)和\(R_i\),表示一个区间
输出格式
- 第一行包含两个整数\(N\) 、\(K\) ,表示目标数\(N\)以及限制数\(K\) 。
样例数据
样例输入&1
100
1
样例输出&1
19
样例输入&2
25
2
样例输出&2
14
样例输入&3
314159
2
样例输出&3
937
样例输入&4
9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
3
样例输出&4
117879300
数据范围与约束
- \(1≤N<10^{100}\)
- \(1≤K≤3\)

浙公网安备 33010602011771号