摘要: 原题链接 题解1 stl模拟,注意lowerbound的效果和pos的返回值 code1 #include<bits/stdc++.h> using namespace std; vector<int> a; int main() { int n; cin>>n; while(n--) { int 阅读全文
posted @ 2024-03-04 23:38 纯粹的 阅读(19) 评论(0) 推荐(0)
摘要: 原题链接 题解 对于每个容量,当前组 \(i\) 而言,放的决策有 \(size(i)+1\) 种 code #include<bits/stdc++.h> using namespace std; struct unit { int w,v; }; vector<unit> G[1005]; in 阅读全文
posted @ 2024-03-04 22:51 纯粹的 阅读(14) 评论(0) 推荐(0)
摘要: 原题链接 题解 等价于线性代数中求最大无关组的大小 code #include<bits/stdc++.h> using namespace std; int main() { int t; cin>>t; while(t--) { int n; cin>>n; int a[105]={0}; fo 阅读全文
posted @ 2024-03-04 22:42 纯粹的 阅读(30) 评论(0) 推荐(0)
摘要: 原题链接 题解 我们发现,当前的决策会影响未来的结果,因此我们把当前的决策存下来,这样等未来要用的时候就有的转移了,如果未来由多个状态决定,那就现在把那些状态都记录下来 我们发现,一个点如果能被吸收,那么其左边或右边的一个区间的点都肯定被吸收了,所以我们记录 \(f[i][j]\) 表示区间 \([ 阅读全文
posted @ 2024-03-04 20:44 纯粹的 阅读(16) 评论(0) 推荐(0)
摘要: 原题链接 题解 核心技巧:两次搜索 第一次搜索: 搜索出 \(f[now][i]\) 以 \(now\) 为根节点的子树且距离根节点恰好为 \(i\) 的节点的个数 搜索完了之后,把范围 \(k\) 以内的累加 第二次搜索: 由于整棵树的根节点的 \(f\) 等于整棵树里距离不大于 \(k\) 的节 阅读全文
posted @ 2024-03-04 17:56 纯粹的 阅读(41) 评论(0) 推荐(0)
摘要: 原题链接 题解 遍历主件,和还剩下多少钱的情况下,最多有五种购买决策 1.不买 2.买主件 3.买主件+附件1 4.买主件+附件2 5.买主件+附件1+附件2 如果当前的钱够买,那就买买看,然后加上剩下的钱能买的最大值 code #include<bits/stdc++.h> using names 阅读全文
posted @ 2024-03-04 17:49 纯粹的 阅读(24) 评论(0) 推荐(0)