Rank | Solved | A | B | C | D | E | F | G | H | I | J | K | L | M |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
?/ ? | 后面的不准确 号没了 | O | O | O | O | . | O | O | O | Ø | . | Ø | Ø | Ø |
O
: 当场通过
Ø
: 赛后通过
.
: 尚未通过
A. Maximum Element In A Stack
solved by viscaria
viscaria’s solution
维护一个栈即可
B Rolling The Polygon
solved by viscaria
viscaria’s solution
签到
C Caesar Cipher
solved by ?
? 's solution
D Take Your Seat
solved by feynman1999
feynman1999’s solution
找数学规律,后面证明补上
E 2-3-4 Tree
unsolved
F Moving On
solved by chelly
chelly 's solution
G Factories
solved by ?
? 's solution
H Fight Against Monsters
solved by fey
fey’s solution
贪心排序,模拟一下就行
I Bubble Sort
upsolved by chelly
chelly’s solution
对一个数组a[1..n]a[1..n]a[1..n]进行kkk轮冒泡排序得到b[1..n]b[1..n]b[1..n]。
那么b[i]b[i]b[i]是a[1..i+k]a[1..i+k]a[1..i+k]中除去b[1..i−1]b[1..i-1]b[1..i−1]的最小值。所以给定一个b[]b[]b[],我们可以计算出有多少个a[]a[]a[]对应它。
注意到此题里最后b[]b[]b[]的形态是可枚举的,所以可以枚举每个可能的最后的b[]b[]b[],然后计算有多少个a[]a[]a[]和它对应。
J Nested Triangles
unsolved
K Vertex Covers
upsolved by chelly
chelly’s solution
L Continuous intervals
upsolved by chelly
chelly’s solution
一个区间排序后连续等价于max−min=cnt+1max-min=cnt+1max−min=cnt+1。其中cntcntcnt是区间中不同数字的个数。
于是我们可以从前往后枚举每个RRR,维护之前的每一个LLL到这个RRR的max−min−cntmax-min-cntmax−min−cnt的值。注意到所有的值都是>=1的,所以只需要维护最小值和最小值出现的次数即可。修改的时候维护max,min,cntmax,min,cntmax,min,cnt都采用区间加减的形式即可。
M Acyclic Orientation
upsovled by chelly
求出点值,然后插多项式即可。
不需要将多项式插出来,只需要求x=−1x=-1x=−1处的点值。
Dirty Replay
- A题:
- C题:
- D题:
- F题:被卡常了,扣了一下常数。
- G题:没有单独处理n=2的情况,WA了1发。
- K题:WA了两发,因为在dfs回溯的时候,忘记把记录原来信息的数组开成局部的了。
- M题:FFT mod any prime 板子有点问题