集训总结
集训总结
所以到底怎么写啊啊啊
要不先把比赛总结水了罢
集训第一次比赛总结
A. 防签到题
真的防到签到了啊啊啊
题面:求出下列函数在 $k$ 位无符号整数下的运行结果:
unsigned f(unsigned n){
unsigned x = n & -x;
return (n + x) | ((n ^ (n + x)) / x) >> 2;
}
数据范围:$2\leq k \leq 64,0<n<2^k$ 。
赛时精神状态:$k$ 位?直接$\mod 2^k$ 完事(
喜提 $20$。
赛后精神状态:手动模拟?不会
然后玄学修改一波。在模拟过程中对其取模。$\tiny\color{white}但是我真的不知道怎么过的(划掉)现在知道了$
显而易见的,函数执行过程中只有 $n + x$ 有可能出现溢出。所以对其进行取模。然后过了。
ull func(ull n, ull k) {
ull x = n & -n, y = n + x;
if(k != 64)y %= (ull)pow(2, k);
return y | ((n ^ y) / x) >> 2;
}
B. 勇往直前
题面:
小 $q$ 来到了某个关卡,可看作数轴,起点为 $0$,终点为 $m$ 。
关卡中分布着 $n$ 个陷阱,其位置各不相同且按升序编号,第 $i$ 个陷阱位于 $a_i$ 处,初始时的状态为 $t_i$, $0$ 为休眠状态,$1$ 为激活状态 。当小 $q$ 踩中某个陷阱时,陷阱的状态会发生翻转,若踩中时陷阱处于激活状态,还会将小 $q$ 传送回 $b_i$,且此处不会有其它陷阱。
小 $q$ 是个莽夫,只会无脑向前,请你帮他计算到达终点时所走的总路程(不包含陷阱传送的距离)。
数据范围: $1\leq n\leq 2\times10^5,0<b_i<a_i<m\leq10^9,t_i\in\{0,1\}$ ,对任意 $0<i<j\leq n$ 有 $a_i<a_j,a_i\ne b_j$ 。
赛时精神状态:直接模拟,甚至没有加一点优化 :/
然后 $10$ 分,意料之中。
正解: $dp$。
显然,当你达到第 $i$ 个陷阱时,其前方区间为 $[0,i)$ 陷阱已经被激活了。
于是便有转移思路:在到达 $i$ 号陷阱时, $[b_i,a_i)$ 上的所有陷阱都会被踩一遍。$\tiny\color{white}真就不会绕路是吧$
可得转移方程 $f_i=\sum\limits_{j=1}^if_j\times[a_j>b_i]$ 。
但是 $n\leq2\times10^5$ 的范围告诉我们这是一道复杂度为 $O(n\log n)$ 的题目。
所以需要加一点优化。
求和可以使用前缀和进行优化, 为找到 $a_j>b_i$ 明显可以使用二分。
所以完了。
C. 【小粉兔】构造题
这道题表达了作者对于人类智慧的喜爱之情。显然我没有
题面:求长度为 $[1,n]$ 的排列 $p_{[1,n]}$ 使得对于任意 $1\leq i<n$ 有 $p_i+p_{i+1}$ 或 $|p_i-p_{i+1}|$ 为奇质数。
考场精神状态:sokndfakjlawbnlkjdfbaljohbflkjawbfwa
于是不出意外地一分没有。
正解:人类智慧。、
显然原排列被表达为如下序列:
$$p={p_k,p_{k-1},p_{k-2},\cdots p_1,p_{2k},p_{2k-1},\cdots p_{qk},p_{qk-1},\cdots p_{(q-1)k+1}}$$,对于任意 $a\in\N$ 满足 $|p_{ak}-p_{(a-1)k+1}|\in\mathbb P$ 且 $\{k,n-k\}\in\mathbb P$。
哥德巴赫猜想:任意一个偶数可以被分为两个质数之和。该猜想在 $n <= 10^{30}$ 范围内已被证明。
根据这个性质,我们便可以得到 $k$ 的值。
但是哥德巴赫猜想只适用于偶数。所以需要再单独给奇数写一个输出。
先输出其本身,然后倒序输出刚才的序列。然后就玄学地过了。
D. 排版
暑假摸鱼去了,然后没做到原题。
但是有人是当时唯一一个过了原题的人,但是这次没过,然后被暴揍(
于是重复一句机房大佬的话:
至今还没补掉。
倍增并不在我的装备区中。
比赛总结:
A 无脑做题,比预计分多了20(
B 模拟,没挂分。
C 玄学构造题。可能我需要获取一些人类智慧。
D 所以现在都没补上。
总分 $40$,挂了 $-20$ 分。
阶段性总结
主打一个被序列 $dp$ 爆切,然后看着别人爆切 $dp$ 。
痛苦面具。
集训第二次比赛总结
A. 数三角形
题意:在一个原上均匀分布着 $n$ 个点。每两个点之间有一条连边。$c_{i,j}$ 表示点 $i$ 与点 $j$ 连边的颜色。求图中顶点均在点上的纯色三角形个数。
数据范围:
对于 $30\%$ 的数据,$1\leq n \leq500$ 。
对于 $60\%$ 的数据,$1\le n\le2000$ 。
另有 $20\%$ 的数据,$c_{i,j}=1$ 。
对于所有数据,$1\leq n\leq5000,c_{i,j}\in\{0,1\}$ 。
考场精神状态:由题意得这是一道学霸题。所以我不过情有可原(? $O(n^3)$ $30$ 分加上特判 $20$ 分。能活。
正解:
正难则反。
求出杂色的三角形数量。然后用总数减去杂色三角形数量。然后完了。
具体一点,统计每个点连的颜色数量,存于 $a,b$ 中。
则答案为 $C^3_n-\sum\limits_{i=1}^na_ib_i$ 。
B. 翻转
不会
C. 果果系统
所以 @NotDeep 下次出系统时可不可以说一声啊啊啊啊啊啊
反人类。但是我不是人类。至少没有人类智慧。所以可以反。
题意:
在 $n\times m$ 的网格图内按顺序放置 $k$ 个大小为 $2\times2$ 的正方形。
时间靠前放置的正方形会被靠后的正方形覆盖。
先给出 $k$ 个正方形全部放置后的网格图,求出每个正方形放置的顺序及其左上角坐标。
数据保证正方形不会被覆盖 $2$ 个方格以上,且保证有解。
正解:
大模拟,但是不会。
好像要考虑 $4\times4$ 范围内的多种情况来着。
但是考场没打出来。赛后不想打。
D. 凸
同 B。
题意待会补。去打 arc 了。可能能做两道。

浙公网安备 33010602011771号