03 2024 档案
摘要:C 我们用 的和减去出现在 中的数的和。 int n, k, a[N], res; map<int, int> vis; signed main() { cin >> n >> k; _for(i, 1, n) cin >> a[i]; res = k
阅读全文
摘要:寒暄:这次 D 我真的是服了,一直 TLE,加了很多个剪枝变成 TLE*1。做 C 的时候又跳到 E,F 去,E,F 居然没做出来,导致 C 较晚才提交通过。 膜拜:TQAFC 居然过了 F ? C 如果交换的两个字符是不同的,那么就可以得到一个全新字符串。如果交换的两个字符是相同的,就是原来的串。
阅读全文
摘要:C 先预处理出三个数组能拼出的数,存放到 map 中。 查询的时候只需要看这个数是否出现在 map 里即可。 时间复杂度 ,, 是 map 的时间复杂度。 #include <bits/stdc++.h> u
阅读全文
摘要:bitset 基础用法 operator []: 访问其特定的一位。 operator ==/!=: 比较两个 bitset 内容是否完全一样。 operator &/&=/|/| =/^/^=/~: 进行按位与/或/异或/取反操作。 bitset 只能与 bitset 进行位运算,若要和整型进行位
阅读全文
摘要:右下角可以切换黑白背景。括号内的数为难度评分。 C. 343 (*220) 枚举开根后的数,再来判断回文。,所以最多枚举 个数。 int check(int x) { tot = 0; while (x) { b[++tot] = x % 10;
阅读全文
摘要:前置知识: 珂朵莉树与 CDQ 分治。 CDQ 分治 先来介绍一下 CDQ 分治: 看看 CDQ 能解决什么问题: 解决和点对有关的问题。 1D 动态规划的优化与转移。 通过 CDQ 分治,将一些动态问题转化为静态问题。 例题 1:P4390 然而,比较常用的是第三种,我们可以看一道例题 P4390
阅读全文