上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 75 下一页
摘要: 原题链接 考察:数位dp 思路: 只从看了那道CF55D题我数位dp越写越懵(.) 这道题用容斥原理写的,有正常的循环写法: GO 要注意求的数不同,最后判断条件也不同. Code #include <iostream> #include <cstring> #include <vector> us 阅读全文
posted @ 2021-05-29 13:58 acmloser 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:数位dp 思路: 应该是入门题,但我WA了两次....这道题直接求连续的49反而不大好求,我们反过来求不连续49的个数,然后再减去即可. ##Code #include <iostream> #include <cstring> #include <vector> using nam 阅读全文
posted @ 2021-05-29 11:47 acmloser 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:贪心+思维 思路: 将所有数字化为k*p+b,每次优先队列更新最大值,都会将最大值的k压为次大值的k.我们从大到小遍历,求解k次操作后,最大值的k,已经确定最大值所在位置idx. 求完之后,k可能有多.需要将idxn 之间的数再均摊k.但是注意它们只能均摊idxn长度的k.剩下的k, 阅读全文
posted @ 2021-05-29 09:15 acmloser 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:贪心 这题不难,但是本蒟蒻是fw.主要是没分析出点的性质,发现了点的个数很少后没啥反应(.) 思路: 注意到点的坐标是倍增增长的,根据起始坐标的范围,最大能运动到(2*1016,2*1016)处.a最小是2,因此最多是60个点. 接下来就没想到了,因为点坐标是倍增增大的,因此1~i的 阅读全文
posted @ 2021-05-29 03:05 acmloser 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:数位dp 思路: 预处理时,不计入每位数字为4或首位为6,次位为2的数字. 但是注意计算左分支的时候,我们是ans+=f[i+1][枚举的数字],如果枚举的数字为2,实际还需特判上一位.因为预处理首位数字为2时没有考虑上一位是什么. Code #include <iostream> 阅读全文
posted @ 2021-05-28 09:50 acmloser 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:博弈论 思路有点跳跃,反正我是没想到() 思路: 我们发现操作1:石子数-1. 操作2:堆数-1.每次操作都变化的堆数+石子数的和的奇偶性.而堆数+石子数-1 = 能操作的最大次数. 再发现当堆数 = 1,石子数 = 1是必经局面,先手必胜.堆数+石子数-1为奇.如果某个局面先手必胜 阅读全文
posted @ 2021-05-27 12:10 acmloser 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:构造+贪心 思路: 最小值很容易想,如果叶子结点之间的距离都为偶数,那么minv = 1.如果存在一个奇数那么minv = 3. 最大值本蒟蒻没想到,实际上只要两个叶子结点之间距离==2,那么这两个叶子结点之间必同权值.如果dist>2,那么一方可选择的值就很多,必然不会相同.这个不 阅读全文
posted @ 2021-05-27 02:47 acmloser 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:博弈论 思路: 这道题像上题一样解释阶梯博弈会发现行不通,因为0位置可以被多个点占据,而上题所有位置都是一个棋子. 那么怎么解呢?博弈论的快速解法就是去找必败态.我们可以发现: 先手只能移动一组里左边的石子,如果k在组里的第二个,那么先手必败. 如果k在组里的第一个呢? 接下来讨论n 阅读全文
posted @ 2021-05-26 21:02 acmloser 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:博弈论 思路: 看了大佬题解才发现是阶梯博弈,这里讲一下为什么是阶梯博弈. 以第二个样例: 1 5 6 7 9 12 14 17 我们计算出每个人可以移动的距离数组b:0 3 0 0 1 2 1 2 假设我们把第二个人往左移动2格,该数列变成:0 1 2 0 1 2 1 2 有没有发 阅读全文
posted @ 2021-05-26 11:26 acmloser 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:博弈论 思路: 威佐夫博弈,求先手必胜的第一步. 要先手必胜,即把后手面临的局面改为先手必败.当n==(m-n)*k即先手必败.这里分两种情况: (m-n)*kd,d<n时,我们可以从n堆里取,但我们需要保证新局面下m,与n的差值不变,才能保证差值*kn 从m堆里取,此时m堆的值不可 阅读全文
posted @ 2021-05-26 01:16 acmloser 阅读(65) 评论(0) 推荐(0) 编辑
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 75 下一页