题意:给出$n$,求$n! \bmod 10$。
题解:略
题意:给出$n$,输出$2^n$的个位数
题解:略
题意:给出$n$对数$(l,m)$,表示分数$\frac{l}{2^m}$,把它们排序后输出。
题解:略
题意:给出$n$个点,$m$条边的带权无向图,其中有$k$个特殊点,求其他点到最近特殊点的最大距离。
题解:多源最短路求一下,然后取最大值。
题意:给出一个整数$n$,找出它的一个Signed-digit_representation,要求非零个数最少。
题解:就是找一个Non-adjacent_form,参考wiki里的算法。
题意:$n$层双色汉诺塔最小步数。
题解:A033120
题意:给出一棵$n$个节点的无根树,找出一条边,删掉之后,两边子树大小乘积最大。
题解:略
题意:有$n$个人,要为他们安排$n-1$场比赛,每一场的胜利者和下一个人打。现在知道了一些比赛结果:$a$和$b$打,$a$一定输,问哪些人存在一种安排序列,必定会在最后胜出。
题解:首先求出SCC,那么唯一一个入度为$0$的分量就是答案。
题意:有$n$个人,要去$m$个城市旅游。每个人有两个条件,都是一定要去某个城市,或者一定不去某个城市这种形式。
要求选出一个城市列表,满足所有人的需求。
题解:裸2-SAT
题意:给出$n \times m$的格子,有些位置放了镜子:向右的光线会被折射成向上;向上的光线会被折射成向右。
现在告诉你从边界进来的光线,会从哪个边界出去。要求还原镜子的位置。
题解:考虑贪心模拟,尽可能先往上走,然后再往右走,假设当前位置是$(x,y)$,终点是$(x^\prime,y^\prime)$
- 当前光线向右:如果$(x,y)$上方没有镜子并且$y \ne y^\prime$,或者$x \ne x^\prime$,那么可以继续向右;否则在当前位置放一面镜子,改成向上
- 当前光线向上:如果当前位置有镜子,则改成向右;否则继续向左
题意:给出一个$n$个点$m$条边的联通无向图,保证每个点度数是偶数,点$i$的权值是$w_i$。从$1$出发,经过每个点,每条边至少一次,最后回到$1$。如果点$i$是经过的第$k$个不同的点,那么收益是$w_i-k$,每经过一条边的收益是$-1$。
找到一条路径最大化收益。
题解:可以证明收益和经过点的顺序无关,令路径长度是$l$,第一次经过点$i$的时候是地$k_i$个不同的点,那么
于是代价和路径长度有关,显然走欧拉回路最靠谱。
题意:$n \times n$的格子上,有$m$个障碍物。问最多可以放多少马,使得任意两个互相不能攻击。
题解:二分图匹配
题意:给$n$个矩形$(x_1,y_1)-(x_2,y_2)$,求面积并。
题解:扫描线
题意:有两座岛A和B,A岛上有$n$个传送门,B岛上有$m$个传送门。传送门可以设置成receiving或者sending模式。如果是receiving模式,则可以接收人;如果是sending模式,只要进入则会把人传送到终点。
现在给出每个传送门的终点,要求设置每个传送门的模式,使得:
- 任何receiving模式的门至少有一个sending模式的门的终点是它
- 任何sending模式的门的终点一定要是一个receiving模式的门
题解:先把A岛的全部设置成sending模式,B岛的全部设置成receiving模式。每次从B岛中选择一个useless的门,转换下模式,直到找不到为止。
用个queue维护入度为$0$的点集即可。