AtCoder Beginner Contest 190
A
…
B
…
C
直接暴力枚举每个人把球放在哪个盘子即可
D
求公差为1,和为N的不同等差数列个数
令 L L L为首项, R R R为末项,有 ( L + R 2 ) ( R − L + 1 ) = N (\frac{L+R}{2})(R-L+1)=N (2L+R)(R−L+1)=N
即 ( L + R ) ( R − L + 1 ) = 2 N (L+R)(R-L+1)=2N (L+R)(R−L+1)=2N
O ( ( 2 N ) 1 2 ) O((2N)^{\frac 1 2}) O((2N)21) 枚举 L + R L+R L+R 并判断是否可行即可
E
给出一个二元关系,相邻的数必须满足该关系
问是否存在数列包含 C 1 , C 2 , . . . , C k C_1,C_2,...,C_k C1,C2,...,Ck ,若存在,求最短路径经过的点数
根据二元关系连边造出一张无向图,问题转化为找到一条最短的路径遍历k个关键点
bfs预处理关键点与关键点之间的最短路,然后状压dp即可
F
求出初始排列的逆序对后,每次把最前面的数移到最后,然后更新逆序对数即可