Day-1【游记】
早上开考前心情平稳,反正啥都不会
8:00
打开了没有加密的pdf,然后看到了T1极短的题面
心 肺 停 止
卧槽不会又是NOI冬令营体验吧...
先看题目名称,T2取石子游戏大概率博弈论,应该不可做
T2T3性质未知
上来肯定是先推T1
一眼无解:如果给定的序列中没有 \(1\),那么答案一定是 \(0\)
再稍微手玩一下下,发现一个数插入的位置之前的,在给定序列中的数,一定全部比其小
根据这些性质很快打出 \(40pts\)
再根据一部分的性质加持,最后结合暴力,这题也就暂时的完事了
9:30
然后开T3,发现直接爆搜不好搜,于是转化为图论模型,然后暴力找出满足条件的路径即可
然后怒码6k,自我感觉还很好(?
11:00
之后就是T2了,一眼操作:区间 \(\max\)
啊!吉老师线段树,这我会!
然后第二个操作是经典博弈,区间 \(\oplus\) 即可
但是这题还要输出方案数,当时也不知道我当时多傻逼,居然天真的认为一堆石子会出现多种情况
然后我就不会维护了
记得当时自己对自己说:自己会吉老师线段树又如何呢?不还是沦为部分分么
我真想掐死我自己
赛场上还是打了部分分:只有 \(0/1\) 的情况
因为根据当时我的思路,只有这档部分分一堆石子不会出现多种情况
然后回去看T1,然后想到一个位置之后能放的数是有限的
然后又双叒叕没想出来如果出现 \(x_{i-1}>x_i\) 的情况,那么 \(x_i\) 之后的位置就不能插入数了
最后还是没啥进展,查查文件输入输出拍屁股走人了
预计得分:\([40,60]+15+[0,52]=[55,127]\)
13:30
听别人说出成绩了,我赶紧跑过去看看
开幕雷击
选手 | permutation | game | skate | 总分 |
---|---|---|---|---|
zyc | 0 | 0 | 0 | 0 |
卧槽不会真的 \(0\) 了吧
我开始坐在座位上思考人生,突然想到这成绩一定不太对:我至少有分啊,因为我 printf("0");
了啊!
一会,兔队在前面问有没有建子文件夹的,本场考试不需要建子文件夹
我一想这TM不就是我么,赶紧过去改改重测
选手 | permutation | game | skate | 总分 |
---|---|---|---|---|
zyc | 75 | 15 | 28 | 118 |
rk20,充分说明了我即使去考省选也进不了E队
还好还好,没挂多少,但成绩也不是很好,毕竟很多我能推出来的东西都自己把自己假了
Day-1【题解】
数排列(permutation)
赛时脑子一抽没想出来最后一个性质,只拿了75pts,wtcl
拿到这题时我连题都没有读懂,后来发现就是求满足 | 长度为 \(m\) 的字典序最小的 序列 | 为给定序列的个数
如果你计数题做的多,很容易想到我们可以一个一个从小到大向给定的排列中插入数
而一个位置上插入的数一定是比其左面都大的,事实上,它也比右面相邻的那个数大
正确性显然
这就像置换反应一样,如果插入的数比其小,那么给定排列中的数会被置换出来
然后就是一个显然而又不显然的结论:
如果给定的排列出现一个位置满足 \(x_{i-1}>x_i\),且这个位置是满足这个性质的最靠前的位置
那么从这个位置之后的数(包括这个数)之间都不可能再插入数
然后这题就做完了,扫一遍即可,复杂度 \(O(n)\)
取石子游戏(game)
事实上,一堆石子不可能出现多种情况
如果我们设 \(s\) 表示区间异或和,\(d_i\) 表示每个位置上的数,即:
\[s=\bigoplus_{i=l}^rd_i \]那么取第 \(i\) 堆石子可以取胜当且仅当 \(d_i\oplus s<d_i\)
考虑到 \(d_i\oplus s<d_i\) 说明 \(d_i\) 能对最高位造成影响,上面的断言的正确性也是显然的
之后我们要做的就是对于一个区间,找出满足 \(z\) 的最高位在 \(d_i\) 中为 \(1\) 的 \(d_i\) 的个数
这是一个简单的问题
然后就是吉老师线段树基本操作,维护最小值,次小值,个数即可
根据异或的性质 \(a\oplus a=0\) 可知,如果一个区间内有偶数个 \(a\),那么对其取 \(\min\) 之后,这个区间的异或和是没有什么变化的
如果有奇数个 \(a\),那么这个区间异或和的变化仅仅需要与 \(a\oplus v\) 进行异或
至此,问题解决
滑冰(skate)
u1s1,赛场上没看出来是2-SAT
我们发现对于一个标记点可能会上下经过,或是左右经过
原图可以显然的转化为图论模型(事实上,我的暴力也是这么做的)
然后规定一个起点,之后就是显然的2-SAT问题
最后这是一个竞赛图,很多性质都可以得到解答
建图直接2-SAT即可
Day-1【补题】
暂时没有时间补呢...