
数学
Lqingyyyy
这个作者很懒,什么都没留下…
展开
-
童心智造2022.09.05线段树练习
1原创 2022-09-06 22:15:12 · 193 阅读 · 0 评论 -
1^2 + 2^2 + .... + n^2 证明
证明原创 2022-09-02 19:42:26 · 380 阅读 · 0 评论 -
牛客月赛40 H rank1哥的妙蛙思想
题目链接 大致思想就是 假设有x的话那么直接输出就好了 如果 没有 x 我们看他的倍数 y1 y2 y3… ym 如果 y2…ym都是 y1的倍数的话 那么肯定是不行的所以他这里做了一个处理 将每个数做后缀和 并且 开qpow(2,cnt) - 1 第二部分就是相减 如果 都是y1的倍数的话 那么 y1 要减去 y2…ym的数 又因为x是与他们相关的那么 x - y1 - y2…ym 又因为 y1 = y1 - y2…ym 且 x = y1 所以会变为 0 此时就是不存在这种情况 反之则存在 真的妙! #p原创 2021-11-05 23:16:04 · 108 阅读 · 0 评论 -
51nod1798 打怪兽
设f[i] 为至少击败 i个怪兽的方案数 那么 击败i个的方案数则为 f[i] - f[i + 1] 答案即为 1~n f[i]的求和 设sum[i]为前 i个怪兽的攻击力 因为能量从1 ~ n分别为 0~n - 1那么 1 ~ i + 1都是可以被选择为前 i 个的 所以每次就是 乘2 如果sum[i] >= m的话那么就是 2^i * fac[n - i] 如果sum[i] < m的话 就要从前面选择一个 去减掉 因为每次都乘 fac[n - i]所以和只需要看 i 只需要存一个优先队列 .原创 2021-09-03 16:19:02 · 149 阅读 · 0 评论 -
Codeforces Round #738 (Div. 2) E
首先可以想到 题目如果通过正面来求的话 那么所需要求的种类很复杂 所以很容易想到容斥的思想 我们就可以想到 将所有组建情况再减去 gcd不是 1 的情况即可 1.组建所有情况 就可以考虑 dp 前 i个数 组成 m 的种类有多少 很明显 是个背包 但是 复杂度为 nm * (ri - li)所以超时 考虑优化 因为 ri ~ li是连续的 所以可以使用前缀和优化至 2nm 2.gcd不是1的情况 那么就可以变成 gcd 为2 为 3.。。。。为 m的情况 考虑2的时候 我们可以把所有2的倍数往上放 3的时候原创 2021-08-17 14:46:49 · 151 阅读 · 0 评论