摘要: 题意: 给定两个整数 b 和 a ,重排 b ,使得 b 尽量大但是不大于 a。 范围 1e18,两数位数不一定相等。保证答案存在。 思路: 开个桶记录 b[] 中数字出现的次数,cnt[i] 表示当前剩下几个 i 可以使用。 dfs(int u, bool same) 表示现在要填第 u 位,前面 阅读全文
posted @ 2021-12-17 17:29 Bellala 阅读(29) 评论(0) 推荐(0)
摘要: 题意: 在数组 a[] 生成的循环数组 \(a_{i+kn}=a_i\) 中,求最小的 \(j\) 使得 \(H+\sum_{i=1}^j a_i\le 0\) 思路: 这题很经典。 假设答案是 \(ans=kn+r\ \ (r<n)\),则应使 \(k\) 尽量小。维护一个前缀和最值即可。注意特判 阅读全文
posted @ 2021-12-17 00:56 Bellala 阅读(42) 评论(0) 推荐(0)
摘要: 题意: n 个蹦床,每个蹦床有强度 a[i]。从第 i 个蹦床起跳会跳到第 i+a[i] 个蹦床处,然后 a[i] 会 -1,但不能小于1。每轮任选一个蹦床开始跳,跳到超过 n 出界为止。问把所有 a[i] 变成1至少要多少轮。n<=5000,时间限制 2s 思路: 数据范围太小,直接 \(O(n^ 阅读全文
posted @ 2021-12-16 22:46 Bellala 阅读(38) 评论(0) 推荐(0)
摘要: 题意: 数组中的元素两两不同。现做一个冒泡排序算法: repeat swapped = false for i = 1 to n-1: if a[i] > a[i-1]: add(a[i], a[i-1]) //加边 swap(a[i], a[i-1]) swapped = true endif e 阅读全文
posted @ 2021-12-16 17:25 Bellala 阅读(49) 评论(0) 推荐(0)
摘要: 题意: 初值 x 为 0,给一段 -+--+--+ 命令,+ 表示当前值+1,- 表示当前值-1。有m个询问,每个询问 l r 表示屏蔽第 l 到第 r 个命令,剩下的命令按原顺序执行。对每个询问,输出命令执行的过程中出现的不同值的数量,初值0也要算。 思路: x 的变化是连续的,若变化过程中出现的 阅读全文
posted @ 2021-12-16 16:43 Bellala 阅读(30) 评论(0) 推荐(0)
摘要: 题意: 有一个正整数n,甲乙二人轮流操作,每次让当前的数减去它的一个因子(但不能减去1或它自己)。不能操作者输。 思路: 质数显然是必败态。打表发现奇数必败,偶数只有 2,8,32,64,... 必败。最终结论是奇数和形如 \(2^{2k+1}\) 的偶数必败,其他必胜。下面证明。 先分类。①奇数; 阅读全文
posted @ 2021-12-16 12:57 Bellala 阅读(60) 评论(0) 推荐(0)
摘要: 思路: f(i,j,p)表示第1~i棵树已染色, 染成了j组,第i棵树染成p颜色的最小花费。复杂度 \(O(nkm^2)\)。其实还可以维护2个最值优化到 \(O(nkm)\) #include <bits/stdc++.h> using namespace std; using ll = long 阅读全文
posted @ 2021-12-15 21:58 Bellala 阅读(45) 评论(0) 推荐(0)
摘要: 题意: 给定非负初值 s 和长为 n 的数组 a[],a[] 中元素可正可负。求一段最长的区间 [l~r] 使得 \(\forall j\in [l,r],s+\sum_{i=l}^j \ge 0\) ,即 s 加上 a[l~r] 的任意前缀都大于等于0。输出l和r。 思路: 法一:双指针 每次循环 阅读全文
posted @ 2021-12-15 14:18 Bellala 阅读(123) 评论(0) 推荐(0)
摘要: https://codeforces.com/contest/1607/problem/H 题意: 每个盘子里有ai个白球和bi个黑球。现要从每个盘子里拿走mi个球,使不同的盘子数量最小。两个盘子相等是指白球和黑球的个数分别相等。题目保证每个盘子里的球数不少于m 思路: 对于任意两个盘子,只有当它们 阅读全文
posted @ 2021-11-13 12:55 Bellala 阅读(81) 评论(0) 推荐(0)
摘要: https://codeforces.com/contest/1607/problem/G 题意: 给定数组a[],b[]和整数m。每个盘子里有ai个白球和bi个黑球。现要从每个盘子里拿走m个球,使得剩下的所有白球的和与所有黑球的和的差的绝对值最小。题目保证每个盘子里的球数不少于m 思路: 假设从每 阅读全文
posted @ 2021-11-13 12:42 Bellala 阅读(128) 评论(0) 推荐(1)