Warning: session_start(): open(/tmp/sess_7b90098670599a087fa9bd588a2472a0, O_RDWR) failed: No space left on device (28) in /data/wiki/inc/init.php on line 239

Warning: session_start(): Failed to read session data: files (path: ) in /data/wiki/inc/init.php on line 239

Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/auth.php on line 430

Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/actions.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/lib/tpl/dokuwiki/main.php on line 12
2020-2021:teams:manespace:codeforces_round_654_div2 [CVBB ACM Team]

用户工具

站点工具


2020-2021:teams:manespace:codeforces_round_654_div2

codeforces round 654

A Magical Sticks

题意:给1-n这n个数,一个操作可以将两个数合并成一个,问合并操作做完后最多能得到多少个相同的数?

题解:一开始太急了,没好好考虑直接就挂了,后来静下心考虑发现挺简单,考虑是$n$是奇数的情况,前$n-1$个数首位组合得到的和都是$n$,这样最终的答案就是$\frac{n-1}{2}+1$,n是偶数,直接首尾组合,最后的答案是$\frac{n}{2}$

B Magical Calendar

题意:难以描述,放链接:https://codeforces.com/contest/1371/problem/B

题解:看着吓人,实则吓人,比较容易发现一个问题,介于能放和不能放的临界条件是$k$和$x$(假设$k$是矩形长,$x$为方块总数量)相等,而且一旦$x<k$,无论怎么第一行的方块如何排布都会成立,所以显然矩形长为$x$是会对答案做出$x$的贡献。然后就好做了,如果$r$的值大于$x$,则矩形只能取比n小的所有数,答案为$\frac{n(n-1)}{2}+1$,否则,可以取1到$r$的所有数,答案为$\frac{(r+1)r}{2}$

题意:有两种食品,分别由$a$个和$b$个,有两种人分别为$n$个和$m$个,第一种人每次会挑出剩余量多的那种零食吃,第二种人每次会挑剩余量少的那种零食吃,问是否能让所有人都吃到东西?

题解:首先如果$n+m>a+b$,那么肯定不满足(每个人至少要吃一个),首先不难发现第一种人很难没得吃,如果第一种人没得吃,那么肯定是已经什么也不剩了,相反,第二种人比较容易没得吃。首先我们可以得到两种食物中较少的一种,假设数量为$k$,无论接下来如何操作最小值一定是较小的那种的数量一定小于$k$,所以如果$k<m$,那么也不成立,$k≥m$时容易证明一定存在一种方法,使最小值减少幅度为每次减$1$,这样一定能满足条件。

D Grid-00100

题意:这题可坑死我了……说不清楚就放链接https://codeforces.com/contest/1371/problem/D

题解:之前做过一个类似的题目,由那道题的结论可以直接得出,加入1可以平均分布在各行,那么一定可以找到一种分法把保证各行各列的1的数量都相同,这样函数的答案为0,如果做不到平均分,可以使每行每列大小差为1,即答案为2,可以按照之前填充的方法,在前k%n每行填充k/n+1个,其余都填充k/n个,这样答案是对的,挺玄学的,反正答案也挺玄学

E1 Asterism (Easy Version)

题意:定义一次比赛,主人公开始拥有x个物品,出了主人公外还有n个人,第i个人拥有$a_i$个物品,主人公要按照一定顺序来和n个人进行对决,如果一次对决中主人公拥有的物品多于那个人拥有的物品,那么主人公获胜并取得一个物品,进入下一次对决。令所有能够满足使主人公全胜的对决组合有k个,则$f(x)=k$,问对于x的不同的取值,$f(x)$的值不能被k整除的有多少?

题解:真的很绕的一道题啊,本质是暴力枚举,至少对与这个数据较小的题是这样的。枚举每一个可能的x(一开是要稍微根据题意划分一下范围

2020-2021/teams/manespace/codeforces_round_654_div2.1594133667.txt.gz · 最后更改: 2020/07/07 22:54 由 iuiou