A
加减相异的玩意,一个此类连通块内可以任意连这类边。这样一个连通块可以把欠的账堆到一个点上。
- 加减相同的操作,分连通块内有没有环、有没有奇环讨论:
- 无环:最简单,就是一棵树,一定有叶子。每次操作叶子就好了。
- 有奇环(包括自环):选出奇环上一个点,所有账扔到这个点上。这个点可以通过环自救(滑稽),不过不能改变奇偶性。
- 二部子图:同一个集合内的点相当于连了加减相异的边。
B
一轮冒排能把一个数之前的比它大的数中的一个(最大的那个)弄到它后面去,从这个角度入手就很好做了。
C
任何一个询问都能拆成\(\gcd(n,k)\)个环。环内和环之间的放法调整法就能证明。