先放凉凉的排名
2018 Multi-University Contest-多校赛总结
2018 Multi-University Contest-多校赛总结
2018 Multi-University Contest-多校赛总结
表示初中生真的对高数毫无知觉啊…
接下来就是N3(N1000)个大学生/高中生如何将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.。
队友打了一个错误的表出来,对着屏幕干瞪了一个小时,还错了好几次。
实际上是一个非常明显的规律
a0(mod3),答案为a327
a0(mod4),答案为a332
实际上是因为1=12+13+16=13+13+13=12+14+14(题解上的一句话…)

1.3 C.Triangle Partition

01:59:24(0)
排序
非常简单的题目。然而前面花了太长的时间,看这道题的时候已经很迟了qwq.
直接按x或者y轴排序输出即可。


1.4 D.Distinct Values

送命题*1
贪心+set
RT,一道蒟蒻的送命题(还好不是我做的qwq)。
思路很简单,贪心地从前往后维护一个set,做mex运算即可。
结果考试的时候一直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 官方题解):

考虑将游戏变成初始时只有2~n,如果先手必胜的话,那么先手第一步按这样取就获胜了;如果后手必胜的话,那么先手第一步取走1就获胜了。所以全输出Yes就行了。

2.2 J.Swaps and Inversions

00:22:06(0)
逆序对
这题也是队友秒的..
容易发现逆序对=交换相邻需要交换的次数。
直接输出min(x,y)×逆序对。


2.3 E.Hack It

送命题*1
构造
矩阵构造题…
乱构造了半天就是到不了85000…
最后题解好像和同余有关..

2.1 G.Naive Operations

送命题*2
线段树
我的锅,我的锅qwq…
这道题本身思路很简单,维护区间[l,r]pi最小值,其中pi指区间biaimodbi的最小值,每次加一等价于将pi1,并做一个1的懒标记,一旦pi==0向下更新一次即可。
然而蒟蒻半年没打过线段树…结果一直WA。然后就自闭了….


section 3

同样爆炸的一天.


3.1 D. Euler Function

00:25:58(0)
结论+找规律
题目明显是求第k个欧拉函数值为合数的数.
做这道题只需要两三步:打开百度百科>搜索欧拉函数表>输出
至于为什么….可以去网上搜一下证明。

3.2 F. Grab The Tree

00:44:36(0)
博弈论
一道关于xor的趣题..
设点权异或和为sum
sum==0时,根据异或的性质,A一定等于B,因此是平局。
sum>0时,A可以取sum的二进制下的最高位的1,根据异或的性质,点权为sum的二进制下的最高位的1的点一定只有奇数个,因此A必胜。

3.3 L. Visual Cube

01:06:14(-1)
模拟
输出类似如下的立方体A×B×C

....+-+-+-+-+-+-+
.../././././././|
..+-+-+-+-+-+-+.+
./././././././|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/|
+-+-+-+-+-+-+.+.+
|.|.|.|.|.|.|/|/.
+-+-+-+-+-+-+.+..
|.|.|.|.|.|.|/...
+-+-+-+-+-+-+....

恶心模拟题..不想说任何话了qwq


3.4 A. Ascending Rating

送命题*1
滑窗+单调队列
这题不是我做的….
很明显的滑窗+单调队列的题,然后队友就去实现了…
结果一直TLE..
好像题解说要倒着做才不会超时。

3.5 C. Dynamic Graph Matching

送命题*2
状压DP
杯具呀..
自己想了半天之后猜测这道题貌似状压DP可以做,然后被队友残忍拒绝了…
然后就没有然后了.

其实这题DP的思路是比较简单的。
f[S]为已经选S中的点所能构成的方案数。
如果是加边,则dp[S]=dp[S]+dp[Suv]
反之,删边就是dp[S]=dp[S]dp[Suv]


section 4

错题大赛


4.1 L. Graph Theory Homework

00:13:04(-1)
结论
因为a+ba+b所以直接从1n是最短的.注意绝对值.

4.2 K. Expression in Memories

00:49:12(-1)
模拟
这题不是我做的。
主要是注意一下类似+0?,+0,+?之类的情况,之后尝试着替换就好。

4.3 D. Nothing is Impossible

02:28:43(-2)
贪心+心理学
心理学是什么鬼..
其实是因为这道题标程有错,导致数据与题面不符,但仍然有200多人过了这道题?!..不得不说真是心理学大神啊…
后来更换了题面,把ai全部变成1..然后就变大水题了。
将数将bi排序,将m不断地除(bi+1)直到变为零为止,答案就是除的b的个数。


4.4 B. Harvest of Apples

送命题*1
莫队+组合数
想了半天压根没有思路…开始很怀疑为什么会有这么多人过…越做越怀疑人生…
最后才知道是道原题…而且正解是莫队..没有学过莫队的蒟蒻完全自闭了…

4.5 E. Matrix from Arrays

送命题*2
规律+前缀和
最开始是队友在做这道题。
结果队友一直都过不了样例。然后就集体弃掉B题做这道题了。
最后还是没调出来..
考试结束后,发现是坐标输入反了。
其实这道题就是一道找规律的题。
打表可以发现M[i+2L][j]=M[i][j+2L]=M[i][j]
然后预处理M[2L][2L]的前缀和,将x>2L,y>2L的询问拆成4个部分,就可以愉快地O(1)回答了。

section 5

打的最惨的一轮


5.1 B.Beautiful Now

04:37:24(-4)
只做了唯一一道签到题。
而且还是在最后的时间卡过去的。
这是一道暴力题。直接枚举全排列然后检验即可。
复杂度O(n!n)
然而被卡常数了..
最后在其他dalao的指引下,才用剪了枝的DFS卡了过去。其实剪枝有很多方法。这里不再赘述。


5.2 E.Everything Has Changed

送命题(-25)
其实这次爆炸并不是因为上面的B题。
而是因为这道错了25次的计算几何。
留下了不会计算几何的泪水…..
题目本身不难,虽然对初中生非常地不友好,但板子网上都有,也没太大难度。
但卡精度真的没救啊…
彻底被计算几何送自闭了。
在此留下题目:Everything Has Changed.

section 6

非常不正常的一轮,但是居然有分了。qwq


6.1 I.Werewolf

03:44:50(-7)
推理+基环树
没错…这是我们的签到题….
题目不是我做的..
据说是一道遍历染色的题。
将人抽象成一个点,他所指的人与他自己之间连一条有向边并标记。
先将是狼人的边去掉,于是图变成了若干个联通块。
容易得知,这些联通块要么是一棵树,要么是一个基环树。
对于基环树,所有人都可以是村民。
对于树,如果没有狼人的边指向它,那同样所有人都可以是村民,否则指向的节点x与它指向的子树都是狼人。
遍历一遍并染色即可。

6.2 A.oval-and-rectangle

04:22:42(-12)
连续期望+微积分
期望没学过,微积分也没学过,做到这道题的时候真的想吐…
题目本身没有思维难度,主要是现场学习微积分和连续期望实在是花了太长的时间。
根据椭圆的解析式推出来的连续期望的定积分是这样的:

0b4a1x2b2+4xdx

最开始蒟蒻完全不会化简,差点就放弃了…幸亏找到了有道万能计算器,然后瞬间就算出来了。
化简出来等于
2b2+2abπ

接着就错了十二次….
….后来发现连续概率式子还要整体除以b.
所以是2b+2aπ
样例真水

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)
数学+矩阵快速幂
这题是队友做的,算是一道矩阵快速幂的经典题。
首先对于fi=Cfi2+Dfi2+S这个递推式我们有矩阵:

(fi1fi21)×(DCS100001)

由于S=Pi。我们知道PiP种不同的取值,因此对不同的取值跑一遍矩阵快速幂即可。


7.3 E.GuGuFishtion

送命题*1
数论+容斥
果然GuGu了。
压根没有发现φ(ab)φ(a)φ(b)=gcd(a,b)φ(gcd(a,b))
这样题目就简单许多了。
我们可以枚举k=gcd(a,b),求出gcd(a,b)=k的二元组(a,b)的对数。
也就转化成6.4 B.bookshelf一样的莫比乌斯反演或者容斥了。

7.4 I.Tree

送命题*2
LCT\树上分块
发现我们学校的高中dalao都过了这道题,然后就自闭了两个小时。
结果赛后看了dalao们的代码..LCT!!(蒟蒻压根没学过这个东西)。
其实还有另外一种解法叫树分块。(之前也想过这个东西,但以为在树上分块不太现实,结果还真有这种做法..)。
用树分块维护当前节点跳多少次到下一个块,下一个块是什么,和原题中的ai
这样我们就能保证每次修改&查询都是O(n)
最开始的预处理可以用倍增做。
复杂度O(nlogn+mn)


section 8

8.1 E.Magic Square

00:17:35(0)
模拟
额…
这题没什么好说的…
直接模拟即可。良心送分题。

8.2 D.Parentheses Matrix

04:57:04(-8)
构造
构造括号矩阵自闭题。
最开始,我们构造的矩阵是这样的:

()()()()()()()()()()()()(()()())(()()())(()()())

然后就天真的以为,n,m都是偶数时能够匹配的括号数量最多有n2+m1个。
实际上..
n6可以这样构造

((((((((()()()()(()()())()()()()(()()())))))))))

这样构造够匹配的括号数量是n+m4个。
同理,可以构造n<6时匹配的括号数量是n+m3个。


8.3 J.Taotao Picks Apples

送命题
单调栈/ST表+二分
又是我的锅…
蒟蒻考试的时候其实想出来了两种方法:
1.用DP求出从i开始的摘的苹果的数量,每次询问用ST表O(1)查询最大值并二分,找到区间[p+1,n]中与修改值的相邻点,然后用它来更新答案。复杂度O(nlogn+Qlogn),由于有ST表,常数较大。
2.将询问按位置从小到大排序,然后从后向前维护一个单调栈,,并在维护位置x时回答在x上的所有询问,复杂度O(n+2Qlogn),常数较小。
蒟蒻太懒了,懒得打这么长的代码,于是就告诉队友第二个方法自己划水去了。。由于自己的第二个方法有三个二分(其实只用一个),结果最后又集体自闭了….
自己的锅该自己背啊qwq


section 9

9.1 H.Rikka with Badminton

00:48:30(-4)
组合计数+快速幂
签到题。
我们队用的分类讨论计数的方法。
Ans=(b+1)2a+c+d2a+c+(2bb1)2a

9.2 D.Rikka with Stone-Paper-Scissors

02:12:54(-1)
期望+结论
说实话这道题是我们猜出来的。
直接假设Rikka也失去理智地随机出拳。
那么所得的期望是:a2(c1b1)+b2(a1c1)+c2(b1a1)a1+b1+c1
发现正好与样例的结果相同…
实际上证明是十分复杂的化简过程。
利用的是石头剪刀布之间存在的对称性

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搜这个数列,得到一个递推公式…
O(n)预处理打表即可。

10.3 I. Count

01:43:27(-1)
找规律+OEIS
先用OEIS确定是一道欧拉函数的题。然后打出欧拉函数与答案数列,然后找规律。
答案ansi=φ(i)/2+Σφ(i22)/2

10.4 L.Videos

04:39:16(-6)
费用流
考试的时候莫名其妙就猜出是道费用流的题
这道题实际上非常容易想成DP。。。但经过dalao的提醒我们发现其实是一个与费用流相关的题。
接下来就是建模的问题了。
最开始,我们组的想法是将所有人放在X部,所有电影设为Y部
1.源点与人全部相连,费用为0.
2.人与电影两两相连,费用为看电影i的花费wi
3.如果电影X与电影Y之间不相互影响,则在X,Y之间连一条边。注意若两个电影种类相同,费用为wYW。否则,费用为wY
4.将电影与汇点全部相连,费用为0
5.所有边的容量都为1
如下图所示:
2018 Multi-University Contest-多校赛总结
然而这样连有一个问题。
虽然看上去再最后到汇点时已经限制了人数。但是当还是无法防止有多个人看一个电影,例如上图中人可以通过红色的边或者黑色的边到达同一个电影。
经dalao的提示,我们需要拆点。
我们可以将电影拆成两个点(下图中是一个橙色的点,一个绿色[当是绿色吧..]的点),两点之间连一个容量为1费用为0的边。
还有在电影X与电影Y之间不相互影响的情况下,则在X的绿色的点,Y的橙色的点之间连一条边。费用同前。
如下图所示:
2018 Multi-University Contest-多校赛总结
对了…还有要注意千万不能这样连….
2018 Multi-University Contest-多校赛总结

10.5 J. CSGO

05:05:55(0)
子集枚举+思维
https://blog.csdn.net/qq_34940287/article/details/82021295
时间有些奇怪?
是的,这道题是在考试后5分钟调出来的(实际上是光看队友写费用流去了忘了要写这道题).
算是一道比较简单的题目吧qwq.
题目要求求Si+Sj+p=1k|xi,pyj,p|的最大值。
实际上Si+Sj的最大值十分好求,找两个最大的S即可。
p=1k|xi,pyj,p|这一部分十分不友好。
因此我们想办法将这个绝对值去掉。
注意题目要求我们求最大的绝对值。
我们应先考虑一个子问题:

|aibj|的最大值

注意到|ab|=max(ab,ba)
那么max(|aibj|)=max(max(aibj,bjai))=max(aibj,bjai)=max(ai,ai)+min(bj,bj)
解释一下这一步..max(ai,ai)一定是非负的,min(bj,bj)一定是非正的。
这一步相当于将ai全部强制为正,bi全部强制为负然,后找最大值求和
。(至于为什么我真的讲不清楚啊qwq)
等价于max(ai,ai)max(bj,bj)

如果是求|ai,1bj,1|+|ai,2bj,2|.
很明显就是max(ai,1+ai,2,ai,1ai,2,ai,1+ai,2,ai,1ai,2)max(bj,1+bj,2,bj,1bj,2,bj,1bj,2,bj,1+bj,2)

那么对于p=1k|xi,pyj,p|就是
max(max((p=1k±xi,p))+max(max(p=1k±yj,p))
对与±号,我们可以用子集枚举来完成。
答案Si+Sj+p=1k|xi,pyj,p|就是
max((max((p=1k±xi,p)+Si))+max((max(p=1k±yj,p)Sj))
(抱歉,这道题实在讲的太不清楚了)
复杂度O(n2k)
放上官方题解:
2018 Multi-University Contest-多校赛总结

相关文章:

  • 2021-11-13
  • 2018-07-24
  • 2018-08-14
  • 2021-08-02
  • 2021-08-22
猜你喜欢
  • 2021-06-18
  • 2021-12-27
  • 2021-08-10
  • 2022-02-07
  • 2021-09-19
  • 2021-09-17
  • 2021-10-30
相关资源
相似解决方案