摘要:
原题链接 题解 1.对于没有固定颜色的节点来说,每个节点只会有三种颜色,而这又是一棵树,树形dp由此而来 2.由相邻节点不同确定转移方程 3.即使有求模也可能要开long long code #include<bits/stdc++.h> using namespace std; #define l 阅读全文
posted @ 2024-02-15 22:13
纯粹的
阅读(56)
评论(0)
推荐(0)
摘要:
原题链接 思路 并查集 然后看看是否存在上表面联通的洞与下表面联通的洞位于同一集合 code #include<bits/stdc++.h> using namespace std; double n,h,r; int fa[1005]; vector<int> up,down; struct { 阅读全文
posted @ 2024-02-15 21:12
纯粹的
阅读(31)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.总共有t秒,每一秒不是上升就是下降 2.要在救援队赶来之前把体力全部花光 code #include<bits/stdc++.h> using namespace std; int dp[3005][1505]={0};//代表第i秒使用j点体力的方案数 int main() { 阅读全文
posted @ 2024-02-15 20:02
纯粹的
阅读(23)
评论(0)
推荐(0)
摘要:
原题链接 题解 存在某种问问题顺序使得答案最小,可是我们不知道排序的规律,遂试探 给定一种排序,交换任意相邻同学问问题顺序,对答案的改变如下: code #include<bits/stdc++.h> using namespace std; struct unit { int s,a,e,sum; 阅读全文
posted @ 2024-02-15 19:09
纯粹的
阅读(73)
评论(0)
推荐(0)
摘要:
原题链接 题解,我觉得讲的足够好了 code #include<bits/stdc++.h> using namespace std; int main() { int t; cin>>t; while(t--) { int n,m,i; cin>>n>>m; for(i=2;i<=m;i++) { 阅读全文
posted @ 2024-02-15 18:49
纯粹的
阅读(27)
评论(0)
推荐(0)
摘要:
原题链接 题解 根据样例,观察到李白总共走 \(n+m\) 次,每一次不是遇到酒馆就是遇到花 故我们可以设 \(dp[i][0/1]\) 代表第 \(i\) 次遇到酒馆或花的方案数 但是我们发现这样的状态不好转移 故我们可以设 \(dp[i][0/1][k]\) 代表第 \(i\) 次遇到酒馆或花, 阅读全文
posted @ 2024-02-15 18:43
纯粹的
阅读(95)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.当存在某个矩阵符合题意时,所有小于该矩阵的矩阵都符合题意 这是我们就可以想到用双指针 code #include<bits/stdc++.h> using namespace std; int a[505][505]={0},sum[505][505]={0}; int n,m, 阅读全文
posted @ 2024-02-15 12:10
纯粹的
阅读(76)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.如何取出位于序列结尾的连续特征子串:给结尾添加一个断点,位于序列开头的同理 2.对于所有感染牛群(即连续 \(1\) 子序列),无论最初感染牛有几头,位于哪里,感染牛群形成的时间是一样的 3.初始感染牛越少,同一感染牛群形成的时间就越长 4.对于任意不位于边界的感染牛群而言,最晚 阅读全文
posted @ 2024-02-15 01:22
纯粹的
阅读(224)
评论(0)
推荐(0)

浙公网安备 33010602011771号