先放凉凉的排名
表示初中生真的对高数毫无知觉啊…
接下来就是个大学生/高中生如何将3个初中的小盆友虐到自闭的故事。
section 1
蒙蔽的第一天qwq。
第一天就忘了参赛时间,划水到12:30的时候进HDU一看发现比赛已经开始了???
1.1 K.Time Zone
01:01:54(-6) 模拟
今天的第一题。
由于划水了半个小时,就扔给队友做去了,结果做了一个小时,还错了6次(好像坑特别多啊qwq)。
听说做法是将时间全部转成秒,然后模拟?
1.2 A.Maximum Multiple
01:40:56(-6) 结论
第二题就自闭了qwq.。
队友打了一个错误的表出来,对着屏幕干瞪了一个小时,还错了好几次。
实际上是一个非常明显的规律
当,答案为
当,答案为
实际上是因为(题解上的一句话…)
1.3 C.Triangle Partition
01:59:24(0) 排序
非常简单的题目。然而前面花了太长的时间,看这道题的时候已经很迟了qwq.
直接按或者轴排序输出即可。
1.4 D.Distinct Values
送命题*1 贪心+set
RT,一道蒟蒻的送命题(还好不是我做的qwq)。
思路很简单,贪心地从前往后维护一个,做运算即可。
结果考试的时候一直Wrong Answer,一直到考试结束…
1.5 G.Chiaki Sequence Revisited
送命题*2 差分序列+阿贝尔变换
压根不知道阿贝尔变换是什么,考试的时候乱搞了几次就没做了…
1.6 B.Balanced Sequence
赛后题 贪心+排序+模拟
真心后悔考试的时候没看这道题…
一道与括号序列相关的题目。
我们知道当一个串括号将匹配消去时只有四种情况
1.空串
2.(,((,(((
3.)(,)((,))(((
4.)),))),)
对于空串,无论哪个位置都行,可以不用管它。
从全局来看,应该按2,3,4部分的顺序来排
对于2,4部分,显然匹配数量与顺序无关,也可以不用管。
对于3部分来说也有两种情况:
I.(比)多
II.)比(多
I部分我们按)个数从小到大排序
II部分我们按(个数从大到小排序
排好序后模拟即可。
1.7 总结
第一次考试果然没分…
主要是ACM的题从来没接触过吧qwq….
下次继续努力…
section 2
线段树自闭场..
2.1 D.Game
00:11:20(-2) 博弈论+结论
一道结论题,还没打开电脑队友就AC了。
听说是直接输出Yes即可。
证明(by 官方题解):
考虑将游戏变成初始时只有~,如果先手必胜的话,那么先手第一步按这样取就获胜了;如果后手必胜的话,那么先手第一步取走1就获胜了。所以全输出Yes就行了。
2.2 J.Swaps and Inversions
00:22:06(0) 逆序对
这题也是队友秒的..
容易发现逆序对=交换相邻需要交换的次数。
直接输出逆序对。
2.3 E.Hack It
送命题*1 构造
矩阵构造题…
乱构造了半天就是到不了85000…
最后题解好像和同余有关..
2.1 G.Naive Operations
送命题*2 线段树
我的锅,我的锅qwq…
这道题本身思路很简单,维护区间的最小值,其中指区间的最小值,每次加一等价于将,并做一个的懒标记,一旦向下更新一次即可。
然而蒟蒻半年没打过线段树…结果一直WA。然后就自闭了….
section 3
同样爆炸的一天.
3.1 D. Euler Function
00:25:58(0) 结论+找规律
题目明显是求第k个欧拉函数值为合数的数.
做这道题只需要两三步:打开百度百科搜索欧拉函数表输出
至于为什么….可以去网上搜一下证明。
3.2 F. Grab The Tree
00:44:36(0) 博弈论
一道关于xor的趣题..
设点权异或和为
当时,根据异或的性质,一定等于,因此是平局。
当时,A可以取的二进制下的最高位的,根据异或的性质,点权为的二进制下的最高位的的点一定只有奇数个,因此必胜。
3.3 L. Visual Cube
01:06:14(-1) 模拟
输出类似如下的立方体。
....+-+-+-+-+-+-+
.../././././././|
..+-+-+-+-+-+-+.+
./././././././|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/.
+-+-+-+-+-+-+.+..
|.|.|.|.|.|.|/...
+-+-+-+-+-+-+....
恶心模拟题..不想说任何话了qwq
3.4 A. Ascending Rating
送命题*1 滑窗+单调队列
这题不是我做的….
很明显的滑窗+单调队列的题,然后队友就去实现了…
结果一直TLE..
好像题解说要倒着做才不会超时。
3.5 C. Dynamic Graph Matching
送命题*2 状压DP
杯具呀..
自己想了半天之后猜测这道题貌似状压DP可以做,然后被队友残忍拒绝了…
然后就没有然后了.
其实这题DP的思路是比较简单的。
设为已经选中的点所能构成的方案数。
如果是加边,则
反之,删边就是
section 4
错题大赛
4.1 L. Graph Theory Homework
00:13:04(-1) 结论
因为所以直接从到是最短的.注意绝对值.
4.2 K. Expression in Memories
00:49:12(-1) 模拟
这题不是我做的。
主要是注意一下类似+0?,+0,+?之类的情况,之后尝试着替换就好。
4.3 D. Nothing is Impossible
02:28:43(-2) 贪心+心理学
心理学是什么鬼..
其实是因为这道题标程有错,导致数据与题面不符,但仍然有200多人过了这道题?!..不得不说真是心理学大神啊…
后来更换了题面,把全部变成..然后就变大水题了。
将数将排序,将不断地除直到变为零为止,答案就是除的的个数。
4.4 B. Harvest of Apples
送命题*1 莫队+组合数
想了半天压根没有思路…开始很怀疑为什么会有这么多人过…越做越怀疑人生…
最后才知道是道原题…而且正解是莫队..没有学过莫队的蒟蒻完全自闭了…
4.5 E. Matrix from Arrays
送命题*2 规律+前缀和
最开始是队友在做这道题。
结果队友一直都过不了样例。然后就集体弃掉题做这道题了。
最后还是没调出来..
考试结束后,发现是坐标输入反了。
其实这道题就是一道找规律的题。
打表可以发现
然后预处理的前缀和,将的询问拆成4个部分,就可以愉快地回答了。
section 5
打的最惨的一轮
5.1 B.Beautiful Now
04:37:24(-4)
只做了唯一一道签到题。
而且还是在最后的时间卡过去的。
这是一道暴力题。直接枚举全排列然后检验即可。
复杂度
然而被卡常数了..
最后在其他dalao的指引下,才用剪了枝的卡了过去。其实剪枝有很多方法。这里不再赘述。
5.2 E.Everything Has Changed
送命题(-25)
其实这次爆炸并不是因为上面的B题。
而是因为这道错了25次的计算几何。
留下了不会计算几何的泪水…..
题目本身不难,虽然对初中生非常地不友好,但板子网上都有,也没太大难度。
但卡精度真的没救啊…
彻底被计算几何送自闭了。
在此留下题目:Everything Has Changed.
section 6
非常不正常的一轮,但是居然有分了。qwq
6.1 I.Werewolf
03:44:50(-7) 推理+基环树
没错…这是我们的签到题….
题目不是我做的..
据说是一道遍历染色的题。
将人抽象成一个点,他所指的人与他自己之间连一条有向边并标记。
先将是狼人的边去掉,于是图变成了若干个联通块。
容易得知,这些联通块要么是一棵树,要么是一个基环树。
对于基环树,所有人都可以是村民。
对于树,如果没有狼人的边指向它,那同样所有人都可以是村民,否则指向的节点与它指向的子树都是狼人。
遍历一遍并染色即可。
6.2 A.oval-and-rectangle
04:22:42(-12) 连续期望+微积分
期望没学过,微积分也没学过,做到这道题的时候真的想吐…
题目本身没有思维难度,主要是现场学习微积分和连续期望实在是花了太长的时间。
根据椭圆的解析式推出来的连续期望的定积分是这样的:
最开始蒟蒻完全不会化简,差点就放弃了…幸亏找到了有道万能计算器,然后瞬间就算出来了。
化简出来等于
接着就错了十二次….
….后来发现连续概率式子还要整体除以.
所以是
样例真水
6.3 L.Pinball
04:50:42(-2) 物理
这是一道差点送命的物理题。
当然也不可能是我这种物理蒟蒻做的了qwq。
由于自己不懂高中物理,所以直接将官方题解搬过来了:
将重力加速度分解成垂直斜坡和平行斜坡两个方向。考虑这两个方向的分运动。
垂直斜坡方向,小球周期性的弹起下落。
平行斜坡方向,小球做匀加速直线运动。
只要算出垂直斜坡方向的分运动的周期,和平行斜坡方向分运动的总时间,除一下就是答案。
6.4 B.bookshelf
送命题 组合计数+容斥/莫比乌斯反演+GCD
这是自己唯一一道写了完整的博客的题。
由于还有一部分没完成所以晚点再发..
section 7
7.1 A.Age of Moyu
00:13:30(0) 贪心+Dijkstra
前几场都是自己被原题被虐,今天终于自己碰上原题了qwq.
没错。。。这题就是道原题,只不过题目非常卡常,但读入优化一下就好了。
自己原来的做法是贪心+Dijkstra+map。
原题链接
ARC061 E
7.2 J.Sequence
03:48:41(-3) 数学+矩阵快速幂
这题是队友做的,算是一道矩阵快速幂的经典题。
首先对于这个递推式我们有矩阵:
由于。我们知道有种不同的取值,因此对不同的取值跑一遍矩阵快速幂即可。
7.3 E.GuGuFishtion
送命题*1 数论+容斥
果然了。
压根没有发现
这样题目就简单许多了。
我们可以枚举,求出的二元组的对数。
也就转化成6.4 B.bookshelf一样的莫比乌斯反演或者容斥了。
7.4 I.Tree
送命题*2 LCT\树上分块
发现我们学校的高中dalao都过了这道题,然后就自闭了两个小时。
结果赛后看了dalao们的代码..LCT!!(蒟蒻压根没学过这个东西)。
其实还有另外一种解法叫树分块。(之前也想过这个东西,但以为在树上分块不太现实,结果还真有这种做法..)。
用树分块维护当前节点跳多少次到下一个块,下一个块是什么,和原题中的。
这样我们就能保证每次修改&查询都是。
最开始的预处理可以用倍增做。
复杂度
section 8
8.1 E.Magic Square
00:17:35(0) 模拟
额…
这题没什么好说的…
直接模拟即可。良心送分题。
8.2 D.Parentheses Matrix
04:57:04(-8) 构造
构造括号矩阵自闭题。
最开始,我们构造的矩阵是这样的:
然后就天真的以为,,都是偶数时能够匹配的括号数量最多有个。
实际上..
当可以这样构造
这样构造够匹配的括号数量是个。
同理,可以构造时匹配的括号数量是个。
8.3 J.Taotao Picks Apples
送命题 单调栈/ST表+二分
又是我的锅…
蒟蒻考试的时候其实想出来了两种方法:
1.用DP求出从开始的摘的苹果的数量,每次询问用ST表查询最大值并二分,找到区间中与修改值的相邻点,然后用它来更新答案。复杂度,由于有ST表,常数较大。
2.将询问按位置从小到大排序,然后从后向前维护一个单调栈,,并在维护位置时回答在上的所有询问,复杂度,常数较小。
蒟蒻太懒了,懒得打这么长的代码,于是就告诉队友第二个方法自己划水去了。。由于自己的第二个方法有三个二分(其实只用一个),结果最后又集体自闭了…. 自己的锅该自己背啊qwq
section 9
9.1 H.Rikka with Badminton
00:48:30(-4) 组合计数+快速幂
签到题。
我们队用的分类讨论计数的方法。
9.2 D.Rikka with Stone-Paper-Scissors
02:12:54(-1) 期望+结论
说实话这道题是我们猜出来的。
直接假设Rikka也失去理智地随机出拳。
那么所得的期望是:
发现正好与样例的结果相同…
实际上证明是十分复杂的化简过程。
利用的是石头剪刀布之间存在的对称性
9.3 A.Rikka with Nash Equilibrium
04:51:08(-1) DP
玄学Dp…
(明天再补qwq)
section 10
10.1 H. Pow
00:12:37(0) 高精度/Java
可怜的C++超复杂高精度无脑加法…
10.2 G. Cyclic
00:45:42(0) OEIS/结论
OEIS大法好。。。先打表然后用OEIS搜这个数列,得到一个递推公式…
预处理打表即可。
10.3 I. Count
01:43:27(-1) 找规律+OEIS
先用OEIS确定是一道欧拉函数的题。然后打出欧拉函数与答案数列,然后找规律。
答案
10.4 L.Videos
04:39:16(-6) 费用流 考试的时候莫名其妙就猜出是道费用流的题
这道题实际上非常容易想成DP。。。但经过dalao的提醒我们发现其实是一个与费用流相关的题。
接下来就是建模的问题了。
最开始,我们组的想法是将所有人放在X部,所有电影设为Y部。
1.源点与人全部相连,费用为0.
2.人与电影两两相连,费用为看电影的花费。
3.如果电影与电影之间不相互影响,则在,之间连一条边。注意若两个电影种类相同,费用为。否则,费用为。
4.将电影与汇点全部相连,费用为0。
5.所有边的容量都为1。
如下图所示:
然而这样连有一个问题。
虽然看上去再最后到汇点时已经限制了人数。但是当还是无法防止有多个人看一个电影,例如上图中人可以通过红色的边或者黑色的边到达同一个电影。 经dalao的提示,我们需要拆点。
我们可以将电影拆成两个点(下图中是一个橙色的点,一个绿色[当是绿色吧..]的点),两点之间连一个容量为1费用为0的边。
还有在电影与电影之间不相互影响的情况下,则在的绿色的点,的橙色的点之间连一条边。费用同前。
如下图所示:
对了…还有要注意千万不能这样连….
10.5 J. CSGO
05:05:55(0) 子集枚举+思维
https://blog.csdn.net/qq_34940287/article/details/82021295
时间有些奇怪?
是的,这道题是在考试后5分钟调出来的(实际上是光看队友写费用流去了忘了要写这道题).
算是一道比较简单的题目吧qwq.
题目要求求的最大值。
实际上的最大值十分好求,找两个最大的即可。
但这一部分十分不友好。
因此我们想办法将这个绝对值去掉。
注意题目要求我们求最大的绝对值。
我们应先考虑一个子问题:
求的最大值
注意到
那么
解释一下这一步..一定是非负的,一定是非正的。
这一步相当于将全部强制为正,全部强制为负然,后找最大值求和
。(至于为什么我真的讲不清楚啊qwq)
等价于
如果是求.
很明显就是
那么对于就是
对与±号,我们可以用子集枚举来完成。
答案就是
(抱歉,这道题实在讲的太不清楚了)
复杂度
放上官方题解: