学校准初二模拟赛(8,7)
发布日期:2021-05-07 07:05:58 浏览次数:17 分类:原创文章

本文共 5611 字,大约阅读时间需要 18 分钟。

成绩

rank name score T1 T2 T3 T4
1 1 1 h k y hky hky 180 180 180 100 100 100 80 80 80 0 0 0 0 0 0
2 2 2 l y f lyf lyf 170 170 170 100 100 100 70 70 70 0 0 0 0 0 0
3 3 3 t j h tjh tjh 160 160 160 100 100 100 40 40 40 0 0 0 20 20 20
4 4 4 f y fy fy 160 160 160 60 60 60 100 100 100 0 0 0 0 0 0
5 5 5 c y z cyz cyz 140 140 140 100 100 100 40 40 40 0 0 0 0 0 0
6 6 6 w j j wjj wjj 100 100 100 100 100 100 0 0 0 0 0 0 0 0 0
7 7 7 l t h lth lth 100 100 100 100 100 100 0 0 0 0 0 0 0 0 0
8 8 8 c w h cwh cwh 80 80 80 60 60 60 20 20 20 0 0 0 0 0 0
9 9 9 w h d whd whd 70 70 70 60 60 60 10 10 10 0 0 0 0 0 0

题目

T1:杯子

题目

小明买了 N N N个容积可以是无穷大的杯子,刚开始的时候每个杯子里有 1 1 1升水,接着小明发现杯子实在太多了,于是他决定保留不超过 K K K个杯子。每次他选择两个当前含水量相等的杯子,把一个杯子的水全部倒进另一个里,然后把空瓶丢弃。(不能丢弃有水的杯子)

显然在有些情况下小明无法达到他的目标,比如 N = 3 N=3 N=3 K = 1 K=1 K=1。此时小明会重新买一些新的杯子(新杯子容积无限,开始时有 1 1 1升水),以达到目标。

现在小明想知道,最少需要买多少个新杯子才能达到目标呢?

输入

一行两个正整数, N N N K K K

输出

一个非负整数,表示最少需要买多少新杯子。

样例输入1

3 1

样例输出1

1

样例输入2

13 2

样例输出2

3

样例输入3

1000000 5

样例输出3

15808

数据范围

对于 50 % 50% 50的数据, N ≤ 10000000 N≤10000000 N10000000
对于 100 % 100% 100的数据, 1 ≤ N ≤ 1000000000 1≤N≤1000000000 1N1000000000 K ≤ 1000 K≤1000 K1000

T2:玩具

题目

商店正在出售小 C C C最喜欢的系列玩具,在接下来的 n n n周中,每周会出售其中的一款,同一款玩具不会重复出现。

由于是小 C C C最喜欢的系列,他希望尽可能多地购买这些玩具,但是同一款玩具小 C C C只会购买一个。同时,小 C C C的预算只有 m m m元,因此他无法将每一款都纳入囊中。此外,小 C C C不能连续两周都购买玩具,否则他会陷入愧疚。现在小 C C C想知道,他最多可以买多少款不同的玩具呢?

输入

输入文件共 2 2 2行;
第一行两个正整数 n n n m m m,中间用一个空格隔开;
第二行共 n n n个正整数,第 i i i个正整数表示第 i i i周出售的玩具的价格。

输出

输出文件只有一行,包含一个整数,表示小 C C C最多能买多少款不同的玩具。

样例输入

3 8 4 4 5 

样例输出

1

数据范围

对于 30 % 30% 30的数据, n ≤ 10 n≤10 n10
对于 60 % 60% 60的数据, n ≤ 100 n≤100 n100 m ≤ 1000 m≤1000 m1000
对于 100 % 100% 100的数据, n ≤ 1000 n≤1000 n1000 m ≤ 1000000 m≤1000000 m1000000,单个玩具的价格 ≤ 1000 ≤1000 1000

T3:恐怖的奴隶主

题目

L L L热衷于 u n d e r c a r d s undercards undercards
u n d e r c a r d s undercards undercards中,有四个格子。每个格子要么是空的,要么住着一只 B i g B o b BigBob BigBob

每个 B i g B o b BigBob BigBob有一个不超过 k k k的血量;血量减到 0 0 0视为死亡。那个格子随即空出。

当一只 B i g B o b BigBob BigBob受到伤害后,假如它没有死亡且剩余血量为 t t t,它会从左数第一个空格处召唤一只血量为 a [ t ] a[t] a[t] B i g B o b BigBob BigBob;若没有空格,则不会召唤。

法术 R R R定义为:从左往右,对每个 B i g B o b BigBob BigBob造成一点伤害;假如有 B i g B o b BigBob BigBob死亡,重复上述效果。

聪明的小 L L L发现,在某些情况下,当他发动法术 R R R时,游戏会陷入循环。
他想求出这样的初始情形有多少种。

输入

输入一个正整数 k k k
随后一行 k − 1 k-1 k1个正整数,表示 a [ 1 ] ~ a [ k − 1 ] a[1]~a[k-1] a[1]a[k1]

输出

输出一个整数,表示答案。

样例输入

22

样例输出

31

样例解释

B i g b o b Bigbob Bigbob最多有 2 2 2血,满血 b i g b o b bigbob bigbob受伤会召出新的。
循环的初始状态有:
( 2 , 1 , 0 , 0 ) , ( 1 , 2 , 0 , 0 ) , ( 2 , 0 , 1 , 0 ) , ( 2 , 1 , 1 , 0 ) , ( 0 , 2 , 1 , 0 ) , ( 1 , 2 , 1 , 0 ) , ( 2 , 2 , 1 , 0 ) , ( 1 , 0 , 2 , 0 ) , ( 0 , 1 , 2 , 0 ) , (2,1,0,0),(1,2,0,0),(2,0,1,0),(2,1,1,0),(0,2,1,0),(1,2,1,0),(2,2,1,0) ,(1,0,2,0),(0,1,2,0), (2,1,0,0),(1,2,0,0),(2,0,1,0),(2,1,1,0),(0,2,1,0),(1,2,1,0),(2,2,1,0),(1,0,2,0),(0,1,2,0),
( 1 , 1 , 2 , 0 ) , ( 2 , 1 , 2 , 0 ) , ( 2 , 1 , 0 , 1 ) , ( 0 , 2 , 0 , 1 ) , ( 1 , 2 , 0 , 1 ) , ( 0 , 2 , 1 , 1 ) , ( 1 , 2 , 1 , 1 ) , ( 0 , 0 , 2 , 1 ) , (1,1,2,0),(2,1,2,0),(2,1,0,1),(0,2,0,1),(1,2,0,1),(0,2,1,1),(1,2,1,1),(0,0,2,1), (1,1,2,0),(2,1,2,0),(2,1,0,1),(0,2,0,1),(1,2,0,1),(0,2,1,1),(1,2,1,1),(0,0,2,1),
( 1 , 0 , 2 , 1 ) , ( 0 , 1 , 2 , 1 ) , ( 1 , 1 , 2 , 1 ) , ( 2 , 1 , 2 , 1 ) , ( 0 , 2 , 2 , 1 ) , ( 1 , 2 , 2 , 1 ) , ( 2 , 1 , 0 , 2 ) , ( 1 , 2 , 0 , 2 ) , (1,0,2,1),(0,1,2,1),(1,1,2,1),(2,1,2,1),(0,2,2,1),(1,2,2,1),(2,1,0,2) ,(1,2,0,2), (1,0,2,1),(0,1,2,1),(1,1,2,1),(2,1,2,1),(0,2,2,1),(1,2,2,1),(2,1,0,2),(1,2,0,2),
( 2 , 0 , 1 , 2 ) , ( 2 , 1 , 1 , 2 ) , ( 0 , 2 , 1 , 2 ) , ( 1 , 2 , 1 , 2 ) , ( 2 , 2 , 1 , 2 ) , ( 2 , 1 , 2 , 2 ) (2,0,1,2),(2,1,1,2),(0,2,1,2),(1,2,1,2),(2,2,1,2),(2,1,2,2) (2,0,1,2),(2,1,1,2),(0,2,1,2),(1,2,1,2),(2,2,1,2),(2,1,2,2)
31 31 31种。

数据范围

对于 30 % 30% 30的数据, k ≤ 5 k≤5 k5
对于 70 % 70% 70的数据, k ≤ 10 k≤10 k10, a [ i ] = k a[i]=k a[i]=k
对于 100 % 100% 100的数据, k ≤ 15 k≤15 k15, 1 ≤ a [ i ] ≤ k 1≤a[i]≤k 1a[i]k

T4:组合树(tree)

题目

B o b Bob Bob想要和 C a r r o l Carrol Carrol玩游戏。但 C a r r o l Carrol Carrol觉得玩游戏太无聊,就和 T u e s d a y Tuesday Tuesday去写歌了。于是现在 B o b Bob Bob来找你玩游戏。

这个游戏是这样的:给定一棵 n n n个节点的树, 1 1 1号点为根节点,设 v v v的父亲是 f ( v ) f(v) f(v) 。其中每个节点有一个颜色,要么是黑色,要么是白色。不妨记第 i i i个节点的初始颜色是 c i ci ci c i = 0 ci =0 ci=0 1 1 1,表示黑色或白色。

在游戏开始时, B o b Bob Bob为每个节点选择一个目标颜色 d i di di,要求你经过若干次操作,将每个节点变成其目标颜色。你的操作是这样的:
●选定一个点 u u u,将 u u u, f ( u ) f(u) f(u), f ( f ( u ) ) f(f(u)) f(f(u)), … … , f k − 1 ( u ) fk-1(u) fk1(u) k k k个节点的颜色翻转(将白色节点变为黑色节点,将黑色节点变为白色节点)。其中 k k k是游戏开始前确定的一个正整数。

只有 u u u, f ( u ) f(u) f(u), f ( f ( u ) ) f(f(u)) f(f(u)), … … , f k − 1 ( u ) fk-1(u) fk1(u) k k k个节点均存在,你才能执行这样的操作。当然,你可以执行任意多次操作。

现在 B o b Bob Bob要和你玩 T T T次这样的游戏,每次你都想要知道你是否有可能完成要求,即通过若干次操作,将所有节点变成其目标颜色。

输入

第一行仅一个数 T ≤ 10 T≤10 T10,表示这样的游戏的次数;
●接下来共有 T T T组数据。对于每一组数据:
○第一行是两个正整数 n n n, k k k n n n表示树的大小, k k k的含义请参见题目描述。数据满足 n , k ≤ 2 × 105 n,k≤2×105 n,k2×105
○接下来 n − 1 n-1 n1行每行两个数 u u u, v v v,表示树上有一条边 ( u , v ) (u,v) (u,v) 。注意:输入并不保证边的方向。
○接下来一行 n n n个数 c 1 c1 c1 , c 2 c2 c2 … … c n cn cn,表示初始颜色。
○接下来一行 n n n个数 d 1 d1 d1 , d 2 d2 d2 … … d n dn dn,表示目标颜色。

输出

输出包含 T T T行,第 i i i行对应第 i i i次游戏的答案;
对于第 i i i次游戏,如果你有可能完成任务,输出 Y e s Yes Yes,否则输出 N o No No

样例输入

2 3 2 1 2 2 3 0 0 0 1 0 1 3 2 1 2 2 3 0 0 0 1 1 1 

样例输出

YesNo

样例解释

●对于第一次游戏,第一次选择 2 2 2号点操作, 1 1 1, 2 2 2号点被翻转;第二次选择 3 3 3号点操作, 2 2 2, 3 3 3号点被翻转。即达成目标状态。
●对于第二次游戏,可以证明,无法将初始状态经过操作变为目标状态。

数据范围

对于前 10 % 10% 10 的数据, n ≤ 5 n≤5 n5
对于前 30 % 30% 30 的数据, n ≤ 20 n≤20 n20
对于前 50 % 50% 50 的数据, n ≤ 2000 n≤2000 n2000
对于前 70 % 70% 70 的数据, n ≤ 50000 n≤50000 n50000
对于全部测试点: T ≤ 10 T≤10 T10, k ≤ n ≤ 2 × 1 0 5 k≤n≤2×10^{5} kn2×105,保证数据给出的是一棵树。

做出来的题目博客



上一篇:恐怖的奴隶主
下一篇:烦恼的高考志愿

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年03月29日 09时09分41秒