上一页 1 2 3 4 5 6 ··· 17 下一页
摘要: 传送门 思路:要求出1-n内所有数对(i,j)的最大公约数和,这题与P2568 GCD十分类似, 先说下GCD那题吧,那题是求出欧拉值后用去素数乘上原互素对,得到新的数对(tx,ty) 的最大公约数就是素数了,具体可以点 here 会过来看这题,我们要求所有gcd的和,那么我们先用欧拉函数求出互素的 阅读全文
posted @ 2021-05-25 11:00 cono奇犽哒 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 传送门 今天在课堂上,老师讲解了如何求两个正整数 c1​ 和 c2​ 的最大公约数和最小公倍数。 现在 Hankson 认为自己已经熟练地掌握了这些知识,他开始思考一个“求公约数”和“求公倍数”之类问题的“逆问题”,这个问题是这样的:已知正整数a0​,a1​,b0​,b1​,设某未知正整数 x 满足 阅读全文
posted @ 2021-05-25 10:30 cono奇犽哒 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 传送门 给定正整数 n,求 1≤x,y≤n 且 gcd(x,y) 为素数的数对 (x,y) 有多少对。 思路:求解这个问题前,1-n的gcd(x,y)为1的数对个数我们大家应该都知道,欧拉函数!,然后遍历相加即可 而这题gcd要为素数,那是不是我们对上面公式的x,y同时乘上一个素数是不是就可以了呢, 阅读全文
posted @ 2021-05-25 10:04 cono奇犽哒 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 传送门 给你一个二进制字符串 s ,现需要将其转化为一个 交替字符串 。请你计算并返回转化所需的 最小 字符交换次数,如果无法完成转化,返回 -1 。 交替字符串 是指:相邻字符之间不存在相等情况的字符串。例如,字符串 "010" 和 "1010" 属于交替字符串,但 "0100" 不是。 任意两个 阅读全文
posted @ 2021-05-24 09:25 cono奇犽哒 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目翻译: 给一个只包含-1,0,1的数列,每次操作可以让a[i]+=a[i-1],求最少操作次数使得序列单调不降 数据范围为N<=10^6 思路:线性dp,定义f[i][3],1<=i<=n,当前位置i取-1,0,1,数列1-i满足不下降的最小操作次数 直接看代码注释吧,主要懒 code: 阅读全文
posted @ 2021-05-22 20:57 cono奇犽哒 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目描述:时间1-n范围内,有k个任务,起始和终止时间固定,员工在空闲时如果有任务就必须工作, 但是如果有多个任务就可以自己选择,求最大休闲时间. 思路: 方法1:dp倒着推,dp[i]表示在i时间点开始工作的最大休闲时间, 如果i是某些工作的起始点,则必须要工作,从这些工作中的终止时间t中 阅读全文
posted @ 2021-05-22 08:14 cono奇犽哒 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目描述:有一个树形的通关图,通过每个关卡需要一定的时间,随时可以停止回到起点重新开始游戏, 问把所有关卡都玩一遍的最少时间 思路:下届为1的最小费用流模板 模板代码: #include<iostream> #include<cstdio> #include<cstring> #includ 阅读全文
posted @ 2021-05-21 12:33 cono奇犽哒 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目描述: 在接下来的n天中,射命丸文将要拍摄幻想乡的少女的照片并且从中为第x个少女拍摄至少Gx​张照片刊登在《文文。新闻》上。在第k天的时候文文有Ck​个取材对象,且对于每个取材对象拍的照片必须在闭区间[Lki​​,Rki​​]中。如果过少, 文文就搞不出大新文;如果过多,就会有少女很安格 阅读全文
posted @ 2021-05-21 12:05 cono奇犽哒 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目描述: 给你一个整数数组 nums ,返回 nums[i] XOR nums[j] 的最大运算结果,其中 0 ≤ i ≤ j < n 。 进阶:你可以在 O(n) 的时间解决这个问题吗? 思路:直接进阶,看了题解才想出来.... 字典树贪心,循环遍历每个数,对每个数的30位二进制位倒着建 阅读全文
posted @ 2021-05-16 10:07 cono奇犽哒 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目描述: 有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中。 现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得 nums[i - 1] * nums[i] * nums[i + 1] 枚硬币。 这里的 i - 1 和 i + 1 代 阅读全文
posted @ 2021-05-12 14:41 cono奇犽哒 阅读(36) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 17 下一页