上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 18 下一页
摘要: Sol 注意到答案大于 3e5 时可以特判,那么只需要求答案小于 3e5 的。 注意后面这个我们可以枚举最大公约数,然后暴力跳倍数检查答案是否合法。 Code Link。 阅读全文
posted @ 2025-03-16 18:20 incra 阅读(10) 评论(0) 推荐(0)
摘要: Sol 手摸一下,字典树上二分即可。 Code Link。 阅读全文
posted @ 2025-03-16 18:19 incra 阅读(34) 评论(0) 推荐(0)
摘要: Sol 对于递增的数列,我们考虑从空数组开始,每次给一个后缀加上一个数,这样一定满足条件。 手摸式子不难发现第 \(i\) 个位置加,那么给答案的性价比就是 \(\frac{s_i}{n-i+1}\),每次选择性价比最高的即可。 Code Link。 阅读全文
posted @ 2025-03-16 17:32 incra 阅读(11) 评论(0) 推荐(0)
摘要: Sol 不难想到可以答案可以为如下形式:777...777a777...77b....777...777,其中字母表示数字。注意到段数不会太多,那么直接包搜间隔的数字即可。 Code #include <bits/stdc++.h> #define x first #define y second 阅读全文
posted @ 2025-03-16 17:18 incra 阅读(17) 评论(0) 推荐(0)
摘要: Sol 不难发现,进位次数越多一定不劣,且进位连续一定不劣。 不难发现:\(s_0+t_0\ge 10,s_i+t_i\ge 9\) 一定最优,且下标最小的 \(s_i+t_i\) 越小越好,那么考虑暴力检查第一轮选的数,后面直接选和最小的即可。 Code Link。 阅读全文
posted @ 2025-03-15 19:06 incra 阅读(33) 评论(0) 推荐(0)
摘要: Sol 很好的思维题。 显然行的和于列的和相等是有解的条件。 考虑从全部填 \(k-1\) 减去数使得方案满足条件,那么我们可以计算出 \(r,c\),分别表示行和列要满足条件需要减去的数的总和。在有解的情况下显然 \(r\euiqv c\pmod k\),那么答案就是 \(nm(k-1)-\max 阅读全文
posted @ 2025-03-15 19:03 incra 阅读(14) 评论(0) 推荐(0)
摘要: Sol 注意到 \(m\le 5\),显然状压。 注意手摸细节。 Code Link。 阅读全文
posted @ 2025-03-15 18:44 incra 阅读(5) 评论(0) 推荐(0)
摘要: Sol 简单计算几何。 直接把四边形拆成两个三角形,枚举两侧最大的即可。 注意凹多边形,如果所有的点都在同侧,那么需要最大的减去最小的才行。 Code #include <bits/stdc++.h> #define x first #define y second #define pb push_ 阅读全文
posted @ 2025-03-10 17:11 incra 阅读(10) 评论(0) 推荐(0)
摘要: Sol 如果两个点相邻,那么边权为 \(1\)。 如果两个点能通过一次操作来联通,此时这两个点一定满足 \(x\) 或者 \(y\) 的差小于等于 \(2\)(手摸一下就知道了),此时边权为 \(1\)。 其他情况边权就是 \(+\infty\)。 直接跑最短路,时间复杂度 \(O(k^2)\)。 阅读全文
posted @ 2025-03-10 17:10 incra 阅读(12) 评论(0) 推荐(0)
摘要: Sol 注意到加数次数总共就很少,那么删数操作也同样很少,所以暴力删除即可。 考虑如何找到原数所在的下标,直接二分,找到第一个满足 \(i\) 减去 \(1\sim i\) 已经被删的数的数量等于 \(k\) 的下标就是第 \(k\) 个数实际的位置,可以用二分树状数组。 时间复杂度 \(O(n\l 阅读全文
posted @ 2025-03-10 17:09 incra 阅读(13) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 18 下一页