Loading

摘要: 传送门 A. AvtoBus 直接判断就好了,大的话就尽量用4,小的话就尽量用6,然后根据取余的关系找就行了 #include <iostream> #include <cstdio> #include <algorithm> #include <vector> #include <string> 阅读全文
posted @ 2022-05-14 23:31 dgsvygd 阅读(262) 评论(0) 推荐(0) 编辑
摘要: Moving Chips 线性dp 本来想用连通块求最短的方法,但是我一看到一个奇葩样例,直接否决这个想法,就是样例的第三个,那个倒三角 采取 dp 的方式: 设 $dp[i][j]$,表示前 i 列只剩下一个芯片,且该芯片位于 第 i 列 第 j 行,所花费的最小代价 dp 的状态转移(以第 0 阅读全文
posted @ 2022-05-14 15:42 dgsvygd 阅读(57) 评论(0) 推荐(0) 编辑
摘要: Binary String 二分 + 尺取 || 尺取 二分+尺取:时间复杂度为 $O(nlogn)$ 答案是单调的,所以直接二分枚举答案,然后再 judge 判断的时候,尺取中间剩下的区间 #include <iostream> #include <cstdio> #include <algori 阅读全文
posted @ 2022-05-14 15:40 dgsvygd 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 传送门 想不到这次居然还能把 E 整出来,怀疑 D E 题是不是反了 上大分 A. Minimums and Maximums 大概就是两个区间之间判断一下交点,其实数据量很小,直接 for 循环跑一边都行 #include <iostream> #include <cstdio> #include 阅读全文
posted @ 2022-05-14 15:36 dgsvygd 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 取石子游戏 威佐夫博弈 板子加规律题,就很没办法 他们的差值与最小的那个值有黄金分割比例,最小的那个值比差值大 #include <iostream> #include <cmath> using namespace std; typedef long long ll; int main() { l 阅读全文
posted @ 2022-05-14 14:54 dgsvygd 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 取(m堆)石子游戏 尼姆博弈 同 HDU-1850,我的题解: https://www.cnblogs.com/dgsvygd/p/16270024.html #include <iostream> using namespace std; const int maxn = 2e5 + 10; in 阅读全文
posted @ 2022-05-14 14:33 dgsvygd 阅读(21) 评论(0) 推荐(0) 编辑
摘要: Being a Good Boy in Spring Festival 尼姆博弈 求出异或和之后,$sum \oplus num[i]$ 就是除去当前值,其他数字的异或和,为了使整体异或为 0,所以就要让此时的 $num[i]$ 变成 $sum \oplus num[i]$,因此,如果 $num[i 阅读全文
posted @ 2022-05-14 14:17 dgsvygd 阅读(21) 评论(0) 推荐(0) 编辑