上一页 1 2 3 4 5 6 ··· 10 下一页
摘要: 前两题签到,不写 T3 知道了公式,但不知道怎么推的 \[ans=\frac{k(p-1)+p}{p} \]知道了在补上 有三种特殊情况,首先是p,k中有一个为1时,只要买一瓶 第二是k为0时不用买 第三是k<=p时要买k瓶 #include<bits/stdc++.h> #define int l 阅读全文
posted @ 2025-08-27 21:15 KK_SpongeBob 阅读(7) 评论(0) 推荐(0)
摘要: 炸了 T1 质数筛+预处理处理出每个数的答案 #include<bits/stdc++.h> #define int long long #define endl "\n" using namespace std; const int maxn=4e6+5,mod=1e9+7,inf=1e18; i 阅读全文
posted @ 2025-08-26 21:00 KK_SpongeBob 阅读(8) 评论(0) 推荐(0)
摘要: T3 首先是无根树,考虑枚举根统计答案 自底向上,如果一个点有比2个多的子树,选择子树大小最大的两个保留 我们统计保留的节点数量,答案就是n-sz[root] #include<bits/stdc++.h> #define int long long #define endl "\n" using 阅读全文
posted @ 2025-08-25 10:45 KK_SpongeBob 阅读(6) 评论(0) 推荐(0)
摘要: 首先是区间修改 直接暴力修改显然不优秀,我们使用一个lazy标记,标记当前加了多少 我们可以在修改时先存起来,在查询时再下传标记 类似于: 修改:lazy[x]+=k; 下传:lazy[x2]+=lazy[x],lazy[x2+1]+=lazy[x]; 但是val数组一样需要更新,在修改时有没有什么 阅读全文
posted @ 2025-08-23 20:16 KK_SpongeBob 阅读(21) 评论(0) 推荐(0)
摘要: 树上背包问题讲解 状态定义:通常定义 dp[u][j] 表示以节点 u 为根的子树中,选择 j 个节点(或边)所能获得的最大价值。 递归处理:采用 DFS 后序遍历,先处理所有子节点,计算子树的 dp 值。 背包合并:对于每个子节点 v,将 v 的 dp 值合并到 u 的 dp 值中。使用倒序循环避 阅读全文
posted @ 2025-08-21 19:44 KK_SpongeBob 阅读(21) 评论(0) 推荐(0)
摘要: 树形DP,顾名思义就是在树上DP T1 B3861 子树和 首先使用数组sz来存储答案(代码中是dis因为sz被【数据删除】了) 可以发现要先算出子树的答案再算出根的答案,所以枚举顺序是自底向上 那么,对于每个点: 定义状态:sz[i]表示根为i的子树的答案 确定答案:sz[i] 状态转移:sz[i 阅读全文
posted @ 2025-08-20 20:18 KK_SpongeBob 阅读(20) 评论(0) 推荐(0)
摘要: 题目 T1 T2 T3 T4 预计得分 100 100 100 ???(随便码的随机数) 实际得分 100 100 100 10 T1&&T2 板子,不写 T3 修理 一眼看上去好像是二维的,实际上发现只是要跑到所有电线杆再跑回来,转化为一维的Hamilton回路问题 我们使用BFS预处理电线杆与起 阅读全文
posted @ 2025-08-19 21:19 KK_SpongeBob 阅读(7) 评论(0) 推荐(0)
摘要: 只写了两道题QAQ T1 Luogu P1879 通读后发现只有以下两个限制条件: 肥沃的土地才能种草 相邻(左右,上下)的土地不能同时种草 先处理第一种情况,我们用f[i]表示第i行的土壤肥沃状态,sta1表示第i行的当前状态 那么,只要将f[i]全部翻转(10互换)再按位与上sta1,判断是否不 阅读全文
posted @ 2025-08-17 21:23 KK_SpongeBob 阅读(8) 评论(0) 推荐(0)
摘要: 前置 此处仅为简写,详见OI Wiki 位运算 按位与 (&):1 & 1 = 1,1 & 0 = 0,0 & 0 = 0 按位或 (|):1 | 1 = 1,1 | 0 = 1,0 | 0 = 0 位取反 (~):~ 1 = 0,~ 0 = 1 按位异或 (^):1 ^ 1 = 0,0 ^ 0 = 阅读全文
posted @ 2025-08-16 20:35 KK_SpongeBob 阅读(10) 评论(0) 推荐(0)
摘要: 区间类动态规划是线性动态规划的扩展,它在分阶段地划分问题时,与阶段中元素出现的顺序和由前一阶段的哪些元素合并而来有很大的关系。 OI Wiki 两端扩展型区间 DP 讲解 核心思想:处理区间问题时,状态转移时从区间的两端进行扩展。通常使用二维 DP 数组 dp[i][j] 表示区间 [i, j] 的 阅读全文
posted @ 2025-08-15 20:31 KK_SpongeBob 阅读(12) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 10 下一页