随笔分类 -  dp

摘要:ST 表(Sparse Table)是一种用于高效解决静态区间查询问题的数据结构。它通过预处理和存储一系列预计算结果,以实现快速回答多个查询问题。 ST 表适用于满足以下两个条件的问题: 1. **静态数据**:数据集在查询操作之前不会发生修改。 2. **区间查询**:需要进行多个区间查询,例如最 阅读全文
posted @ 2023-08-05 14:41 Keith- 阅读(49) 评论(0) 推荐(0) 编辑
摘要:把数字翻译成字符串 给定一个数字,我们按照如下规则把它翻译为字符串: 0 翻译成 a,1 翻译成 b,……,11 翻译成 l,……,25 翻译成 z。 一个数字可能有多个翻译。 例如 12258 有 5 种不同的翻译,它们分别是 bccfi、bwfi、bczi、mcfi 和 mzi。 请编程实现一个 阅读全文
posted @ 2023-03-09 10:52 Keith- 阅读(31) 评论(0) 推荐(0) 编辑
摘要:连续子数组的最大和 输入一个 非空 整型数组,数组里的数可能为正,也可能为负。 数组中一个或连续的多个整数组成一个子数组。 求所有子数组的和的最大值。 要求时间复杂度为 O(n)。 数据范围 数组长度 [1,1000]。 数组内元素取值范围 [−200,200]。 样例 输入:[1, -2, 3, 阅读全文
posted @ 2023-03-06 23:26 Keith- 阅读(14) 评论(0) 推荐(0) 编辑
摘要:B - 滑雪 原题链接 思路 f(i,j)(i,j) f(i,j)=max(f(i+dx[k],j+dy[k])) max(f(1,1),f(1,2),...,f(n,m)) 注意 $维护dp顺序使得坡度更低的坐标先被计算pair<int,p 阅读全文
posted @ 2023-02-19 00:29 Keith- 阅读(15) 评论(0) 推荐(0) 编辑
摘要:摆花 原题链接 思路 $\text { 有 } n \text { 个数 }\left(c_{1}, c_{2}, \ldots, c_{n}\right) , 0 \leqslant c_{i} \leqslant a_{i} \text {, 求有多少种方案数使 } \sum_{i=1}^{n} 阅读全文
posted @ 2023-02-19 00:19 Keith- 阅读(17) 评论(0) 推荐(0) 编辑
摘要:C 清楚姐姐学01背包(Easy Version) 原题链接 思路 求出强制不选择某一物品的最大价值v1,以及强制选择某一物品的最大价值v2 不选择比选择大说明一定不选 -> 输出v1v2+1 不选择与选择相等说明可选可不选 -> 1(v1v2+1) 不选择比选择小说明一定选 - 阅读全文
posted @ 2023-02-04 11:23 Keith- 阅读(31) 评论(0) 推荐(0) 编辑
摘要:01背包 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,NV,用空格隔开,分别表示物品数 阅读全文
posted @ 2023-02-03 19:13 Keith- 阅读(57) 评论(0) 推荐(0) 编辑
摘要:L 小沙の抱团 hard 原题链接 代码 点击查看代码 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<vector> #include<queue> 阅读全文
posted @ 2023-02-01 23:31 Keith- 阅读(18) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示