AFter OI - NOIP2022 游记
每一个少年终将梦醒
参加了最后一次 OI 系列的考试,终于也 AFO 了。几年伴随我的 OI 历程也在此结束。梦结束了。
接下来 whk 加油!
平面直角坐标系的第一象限内有一块左下角为 \((0,0)\) 右上角为 \((10^{100},10^{100})\) 的矩形区域,区域内有正偶数个整点,试求出这样一条从 \((0,0)\) 出发,到 \((10^{100},10^{100})\) 的在区域内部的折线:
可以证明一定存在一条满足限制的折线,你只需要输出满足限制的折线的折点数即可。
注意折点的坐标可以不是整数。
每组测试点有 \(T\) 组数据,对于所有测试点,\(1 \leq T \leq 10^4\),\(1 \leq \sum n \leq 5 \times 10^5\),\(1 \leq n \leq 10^5\),\(1 \leq x_i,y_i \leq n\),保证 \(n\) 为正偶数,每组数据中不存在两个坐标相同的整点。
Farmer John(又)想到了一个新的奶牛晨练方案!
如同之前,Farmer John 的 \(N\)
头奶牛站成一排。对于 \(1\le i\le N\)
的每一个 \(i\),从左往右第 \(i\) 头奶牛的编号为 \(i\)。他告诉她们重复以下步骤,直到奶牛们与她们开始时的顺序相同。
给定长为 \(N (1 \le N \le 10^4)\)
的一个排列 \(A\),奶牛们改变她们的顺序,使得在改变之前从左往右第
\(i\) 头奶牛在改变之后为从左往右第
\(A_i\) 头。
例如,如果 \(A=(1,2,3,4,5)\),那么奶牛们总共进行一步。如果
\(A=(2,3,1,5,4)\),那么奶牛们总共进行六步。每步之后奶牛们从左往右的顺序如下:
0 步:\((1,2,3,4,5)\)
1 步:\((3,1,2,5,4)\)
2 步:\((2,3,1,4,5)\)
3 步:\((1,2,3,5,4)\)
4 步:\((3,1,2,4,5)\)
5 步:\((2,3,1,5,4)\)
6 步:\((1,2,3,4,5)\)
求所有正整数 \(K\)
的和,使得存在一个长为 \(N\)
的排列,奶牛们需要进行恰好 \(K\)
步。
由于这个数字可能非常大,输出答案模 \(M\) 的余数(\(10^8\le M\le 10^9+7\),\(M\) 是质数)。
网络流是一个图论中很大的知识点,这里只涉及部分内容。本篇只涉及最大流、最小割和费用流的相关知识。
一张有向图 \(G = (V, E)\),对于每条边 \((u, v) \in E\) 都有一个权值 \(c(u, v) > 0\),称为边的 容量。且对于图上没有的边 \((u, v) \notin E\),\(c(u, v) = 0\),则这张图叫做一个 网络,图中有两个特殊的点 \(s \in V\) 和 \(t \in V\),这两个点称为 源点 和 汇点。
给定一个有 \(n (n \le 2000)\) 个节点的有向无环图,图中某些节点上有棋子,两名玩家交替移动棋子。
玩家每一步可将任意一颗棋子沿一条有向边移动到另一个点,无法移动者输掉游戏。
对于给定的图和棋子初始位置,双方都会采取最优的行动,询问先手必胜还是先手必败。
SG 函数是解决博弈论问题的一种方法。
首先我们需要了解以下几个概念。
公平组合游戏指的是一类满足下列条件的游戏:
你有一个长度为 \(n (1 \le n \le 2 \times 10^5)\) 的整数序列 \(a\)。
你需要回答 \(q (1 \le q \le 2 \times 10^5)\) 个独立的问题,每次询问如下:
给定 \(l\) 和 \(r\),你可以对序列做若干次操作(也可以不做),每次操作,你需要选择两个数 \(L\) 与 \(R\),其中必须满足 \(l\le L\le R\le r\) 且 \(R-L+1\) 为奇数。然后将 \(a_L\sim a_R\) 的所有数改为 \(a_L\sim a_R\) 的异或和,即 \(a_L\oplus a_{L+1}\oplus \sim \oplus a_R\)。
你的目标是将 \(a_l\sim a_r\) 的所有数变为 \(0\)。每次询问完后,序列复原。
询问的答案即为最小操作数。如果总是不能达到目标,则答案为 \(-1\)。