鉴于Codeforces和atcoder上有很多神题,即使发呆了一整节数学课也是肝不出来,所以就记录一下。
AGC033B LRUD Game
这道题,我们发现$n\leq 2*10^5$只要横坐标或者纵坐标超出范围就可以,所以我们只用看其中一维就可以了。
我们又知道,如果先手想要让它从左边出去,那么先手就会一直Left,后手就会一直Right。
所以枚举四种情况(L,R,U,D)就可以了。
AGC033C Removing Coins
首先我们考虑链的情况,如果选的是端点,那么有一个点没有硬币,如果选的不是端点,那么有两个点没有硬币。所以就是一个取石子问题了。两个点的情况要特殊考虑。
但是树的情况过于复杂,所以我们要选一条链来代替这整棵树,使得这条链被删完当且仅当整棵树被删完。
这条链就是这棵树的直径。
ABC126F XOR Matching
被ABC狠狠地虐了一发 。。。
设$a \oplus b=k$且$a,b,k$互不相同,则构造$a,k,a,b,\ldots,k,\ldots,b$,其中$\ldots$为除了$a,b,k$之外的所有数。