2024年4月23日
摘要: 邮递员送信 题目描述 有一个邮递员要送东西,邮局在节点 \(1\)。他总共要送 \(n-1\) 样东西,其目的地分别是节点 \(2\) 到节点 \(n\)。由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有 \(m\) 条道路。这个邮递员每次只能带一样东西,并且运送每件物品过后必须返回邮局。 阅读全文
posted @ 2024-04-23 17:00 如果有缘我们会再见 阅读(28) 评论(0) 推荐(0)
  2024年3月27日
摘要: manachar void init() { cnt=1; ss[0]='!'; ss[cnt]='#'; len=strlen(s); for(int i=0;i<len;i++) { ss[++cnt]=s[i]; ss[++cnt]='#'; } } int manachar() { d[1] 阅读全文
posted @ 2024-03-27 15:59 如果有缘我们会再见 阅读(17) 评论(0) 推荐(0)
  2024年3月20日
摘要: 之前考虑过如果输入样例很大怎么办,但是没有细想,今天看了看manachar,懊悔如果这个题样例增大一些变成L3 30分就好了hh,相比于洛谷上的模板题,这个题唯一不一样的就是有空格,所以不能再用char数组来保存,改用string来存储,C++中的getline 函数前几天刚了解到正好也派上用场了 阅读全文
posted @ 2024-03-20 18:22 如果有缘我们会再见 阅读(8) 评论(0) 推荐(0)
  2024年1月25日
摘要: 用DP枚举出每一个的能到达的高度,进行 \(n\) 次背包即可,\(ans[ ]\) 记录高度 \(j\) 是否可行,高度 \(j\) 可行 \(n\) 次就是答案,\(j\) 从 \(maxn\) 开始枚举 //dp[i][j] 表示前i个表示高度为j的存不存在 // dp[i][j]=dp[i- 阅读全文
posted @ 2024-01-25 19:08 如果有缘我们会再见 阅读(12) 评论(0) 推荐(0)
  2024年1月24日
摘要: 并查集 并查集如其名,合并与查找 查找 int find(int key) { if(fa[key]==key) return key; else return fa[key]=find(fa[key]); } 合并 void unite(int x, int y) { int fax = find 阅读全文
posted @ 2024-01-24 16:13 如果有缘我们会再见 阅读(153) 评论(0) 推荐(0)