2023 HZCUPC Tutorial
2023 HZCUPC Tutorial
END
. . . . . . .. . . .... . . . ..
2023.04.01
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Easy: A B M
Easy - Medium: C D F L
Medium - Hard: E H I J
Hard: K G
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
O(1)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
O(n)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
C - Genshin Master
5 min
( 108 char
)
O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
D - Add 9 Zeros
ai = aj + 9 i, j
size ⌈ size
2 ⌉
O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
E - XOR on Tree
+ 01trie 01trie
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
E - XOR on Tree
+ 01trie 01trie
S x
x
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
E - XOR on Tree
+ 01trie 01trie
S x
x
v
insert
TLE
dfs
dfs
O(n log(n) log(A)) O(n log(A)), A
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
n ≤ 8, DFS
std::next_permutation
O(n!)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
G - Domino
1.Ai Bi
2.Ai
3.
1 2
Ai
K 2 Bi L
Ai 1 N −K
1 1 Bi + 2
Ai
O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
G - Domino
Bi i
L Ai + Bi K −L Ai
1
i 1
Aj Ak
j Aj
Bj >= Bi i Aj <= Ai
Aj + Bj Ai i
1 A i
1
O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
H - Maze
i j (i + j) mod 2 1
V ≤ n ∗ n, E ≤ 4 ∗ V, TLE
√ Dinic Hopcroft
O(E V )
: O(n3 )
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
I - Magic Tree
1
depth
1 depthx depthn+i x
depth 1
2 : x depth 1 x
1
3
O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
J - Disjoint-Set-Union Sum
998244353 O(n)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
J - Disjoint-Set-Union Sum
merge i i +1
merge
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
∑
dp dp[l][r ] [l, r ] ans
[l, r ]
[l, r ]
[l, m] [m + 1, r ]
L=m−l R =r −m−1
dp[l][r ] (L+R )
L
,
[l, r ]
dp[l][r ]+ = ( ) ∑
(dp[l][m] ∗ R! + dp[m + 1][r ] ∗ L!) ∗ L+R
L + ( rl ai ) ∗ (L + R)!
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
ans
(i, i + 1)
i +1
(i, i + 1)
(n−1)! (n−1)!
x x! = x ai
(x −1)!
ans
O(n2 ),
O(n)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
L - Auto Chess
( )
45
: O(n log(n))
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
distinct)
⌈ n2 ⌉ − 1
{x , −x }(|x | > k) k, n 0
: O(n)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
END
END
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .