随笔分类 - acm-其他算法-贪心
摘要:题意 给定一个长度为$n$的整数序列$a_1, a_2, \dots , a_n$。 现在,请你找到一个序列$a$的连续子序列$a_l,a_{l+1}, \dots ,a_r$,要求: \(\sum\limits_{i=l}^r a_i > 100 \times (r−l+1)\)。 连续子序列的长
阅读全文
摘要:题意 有$N$件物品,每件物品价格为$A_i$元。 你现在有$K$张优惠券。对于一个价格为$X$的物品,如果你使用$y$张优惠券,则你需要花费$\lfloor \frac{X}{2^y} \rfloor$元。 求购买所有物品需要花费多少元钱? 题目链接:https://atcoder.jp/cont
阅读全文
摘要:题意 给定长度为$N$的串$S$,如果$S_i$等于L,说明第$i$个人面朝左边,反之则朝向右边。 若$S_i$和$S_{i+1}$方向相同,则高兴值加$1$。 现在有一种操作操作:选择一个$L$和$R$,将$[L, R]$序列逆序,并且将L变成R,R变成L。如:对LLLRLL操作,得到RRLRRR
阅读全文
摘要:题意 有$N$个任务。如果你完成第$i$个任务,从做的那天起$A_i$天后,你将会获得$B_i$的奖励(比如第$1$天开始做,\(A_i = 3\),那么第$3$天将会获得$B_i$的奖励)。 你每天可以选择其中一个任务做,但是任务不能重复完成。 问从今天起$M$天后,你最多可以获得多少奖励? 题目
阅读全文
摘要:题意 给定一个长度为$N$的整数序列:\(A_1, A_2, \dots, A_N\) 你可以执行如下操作$0 \sim K$次: 选择两个整数$i$和$j$满足$i \neq j$,将$A_i$加$1$,$A_j$减$1$(可能会出现负数)。 问最大的正整数$x$,满足在$K$次操作内,把所有$A
阅读全文
摘要:题意 有一条长度为$L$的面包,将会被切开分配给$N$个小朋友。 第$i$个小朋友希望获得长度为$A_i$的面包。 现在需要重复下面的操作,获得长度为$A_1, A_2, \dots, A_N$的面包:选择长度为$k$的面包和一个正整数$x$,将面包切成$x$和$k - x$两段,花费代价为$k$。
阅读全文
摘要:题意 农夫约翰想给他的 \(N\) 头奶牛购买礼物,但是他的预算只有 \(B\) 元。 奶牛 \(i\) 希望获得的礼物的价格为 \(P_i\),运输成本为 \(S_i\),也就是说约翰要帮奶牛 \(i\) 买礼物,共需花费 \(P_i+S_i\) 元钱。 约翰有一张特殊的优惠券,如果使用该优惠券来
阅读全文
摘要:题意 有$n$堆排列整齐的且相同质量的宝石,每颗宝石具有价值$v_i$。 你有一个倒V字的钩爪,该钩爪长度为$k$,可同时抓取$i$和$i+k$的两颗宝石(左钩和右钩)。必须左右钩都有宝石,否则会不平衡而脱钩。 任意次抓取,求最终能得到的最大价值是多少? 数据范围 \(1\leq k<n\leq 1
阅读全文
摘要:题意 给定一个长度为$N$的数列,求数值严格单调递增的子序列的长度最长是多少。 数据范围 \(1 \leq N \leq 100000\) 思路 维护一个数组 nums,要求这个数组里的元素在数值上是严格递增的。 遍历每一个数,如果这个数比数组里的最后一个数更大,那么就将这个数插入数组的最后;反之,
阅读全文
摘要:题意 给定一个由小写字母构成的字符串$s$,从中选取$m$个字符构成一个新的字符串$t$(字符可乱序),满足一个序列$b$ 序列$b$的定义如下: \(b_i = \sum_{t_j > t_i}|j - i|, 1 \leq i, j \leq |t|\) 数据范围 \(1 \leq T \leq
阅读全文
摘要:题意 汉明距离:给定两个长度相等的字符串$a$和$b$,汉明距离$H(a, b) = \sum_{i = 1}^{|a|}(a_i \ne b_i)$ 现在给定两个长度相等、全由小写字母构成的字符串$a$和$b$。求字典序最小的字符串$s$,使得$H(a, s) = H(b, s)$ 数据范围 \(
阅读全文
摘要:题意 给定两个非负整数$x$和$y$。 规定一种操作,逆序任意三个相邻的二进制位。 问最少需要多少次操作,能使得$x = y$。若不能达到,则输出$-1$。 数据范围 \(1 \leq T \leq 10000\) \(0 \leq x, y \leq 10^{18}\) 思路 我们先观察一下这个逆
阅读全文
摘要:题意 有$n$个人坐成一圈,每人有$a[i]$个糖果。每人只能给左右两人传递糖果。每人每次传递一个糖果代价为$1$。求使所有人获得均等糖果的最小代价。 数据范围 \(1 \leq n \leq 1000000\) \(0 \leq a[i] \leq 2 \times 10^9\) 思路 不妨设第$
阅读全文
摘要:题意 给定一个$n$个数的排列,求比这个排列大的第$m$个排列。 规定始终有解 数据范围 \(1 \leq n \leq 10000\) \(1 \leq m \leq 100\) 思路 首先这题可以直接用next_permutation(a, a + n)秒杀。跑$m$次后的排列,即为最终答案 考
阅读全文
摘要:题意 给一棵$n$个点的树,每条边的边权为$1$。从$0$号点开始走,问走$k$步,最多能都多少个不重复的点(包括$0$号点) 数据范围 \(2 \leq n \leq 1000\) \(1 \leq k \leq 3000\) 思路 贪心。可以先考虑最长链,只有最长链走的尽可能长,才会使得结果最优
阅读全文

浙公网安备 33010602011771号