10 2021 档案

摘要:兼顾数学,状压,甚至一点点容斥思想的好题。 阅读全文
posted @ 2021-10-30 19:46 conprour 阅读(29) 评论(0) 推荐(0)
摘要:【洛谷传送门】 借鉴了 \(\mathtt{wind\_whisper}\) 的思路,他的【博客传送门】(不过我的代码写的比他好看多了) 题解 先不提及优化,一开始本人并没有设计出朴素 DP。(或许有些浮躁?) 设计 DP 看到数据范围还有题目里面玄学的对应关系,可以想到状压,用一维表示已被对应的节 阅读全文
posted @ 2021-10-30 13:49 conprour 阅读(42) 评论(0) 推荐(0)
摘要:【题目传送门】 题解 首先设计出 \(n^2\) 的 DP,\(dp(i,j)\) 表示前 \(i\) 个分成 \(j\) 段。 后来发现空间不够,于是第二维可以压掉,反正每一次都是从前一维状态转移来。 由于 \(T\) 的范围,新加入的斜率不一定单调递增,所以单调队列每次不能弹出队首元素,变成了单 阅读全文
posted @ 2021-10-29 15:45 conprour 阅读(30) 评论(0) 推荐(0)
摘要:次短路,需要严谨的分类讨论 阅读全文
posted @ 2021-10-28 20:13 conprour 阅读(37) 评论(0) 推荐(0)
摘要:传送门 前言 对于换根的理解应该和其他题解不一样,求过。 题解 首先分析题目简化题意:给定一棵树,从里面选出若干个“三连点”的边,使边权和最大。其中“三连边”有如下图两种形态:\(3-1-2\) 和 \(3-5-6\) (图源:tommymio) 一开始我想到一种 DP:\(dp(u,0/1/2)\ 阅读全文
posted @ 2021-10-27 22:52 conprour 阅读(122) 评论(0) 推荐(1)
摘要:总结 发现了时间分配的问题。 原本计划:先思考,再保证一定时间内写暴力。 实际过程: 由于暴力分值过少,想尝试一下中档分(\(40-60\))。 顺序开题到 \(T4\),发现暴力似乎不难,所以打算写个 \(40\)。 想了一通(中途还去看了看前面的题)发现一点规律。 写完之后不久发现反例。 补上暴 阅读全文
posted @ 2021-10-27 19:07 conprour 阅读(41) 评论(0) 推荐(0)
摘要:传送门 题解 一开始想的是先求出 \(1,n\) 的单源最短路,之后枚举中转点把两段拼起来,几乎写完了之后才发现我这个想法根本就不对。(因为没办法简单地把两段路径拼在一起)重构了,用时巨长。 其实,按照上面的思路继续,应该也不难想出正解。 变换一下视角,把 \(1 - n\) 的路径单独提出来,以后 阅读全文
posted @ 2021-10-26 22:56 conprour 阅读(29) 评论(0) 推荐(0)
摘要:考前 复习了几乎所有学过的模板,而且准确度还可以,还是比较有自信的。 准备比较充分。 而且只是CSP,应该不会太难。 ~~(不过考试延时稍微有点恶心,激情都等没了)~~ 考场 前 20min ,按照计划通读题,以为T1是签到题,T2,T4觉得不好做,T3暴力好写。(或许 T1 确实相对签到吧...我 阅读全文
posted @ 2021-10-24 16:26 conprour 阅读(173) 评论(0) 推荐(1)
摘要:重载运算符,应该是最方便写和调用的高精度写法了。 代码: struct haa { int len,a[N]; haa(){len=1;memset(a,0,sizeof(a));} haa(ll x){while(x) a[++len]=x%10,x/=10;} }; char s[N]; inl 阅读全文
posted @ 2021-10-21 17:06 conprour 阅读(143) 评论(0) 推荐(0)
摘要:大部分人的树形背包板子应该是写成下面这样的: for(int i = head[u]; i; i = nxt[i]) { if(to[i] == fa)continue; dfs(to[i], u); sz[u] += sz[to[i]]; for(int j = sz[u]; j >= 0; j- 阅读全文
posted @ 2021-10-21 16:49 conprour 阅读(266) 评论(0) 推荐(0)
摘要:【模板】 阅读全文
posted @ 2021-10-18 22:40 conprour 阅读(178) 评论(0) 推荐(0)
摘要:【这是第100篇随笔!记录这次模拟的重大失误】 阅读全文
posted @ 2021-10-18 08:03 conprour 阅读(60) 评论(0) 推荐(0)
摘要:众所周知,C++ 运行完一段程序会有一条终止语句:return 0 这也对应了一般终端运行的返回值: Process exited after xxx seconds with return value 0 如果这个返回值不是 \(0\) ,说明程序出了问题。 3221225477 (0xC0000 阅读全文
posted @ 2021-10-12 20:44 conprour 阅读(5531) 评论(4) 推荐(3)
摘要:传送门 洛谷P4052 [JSOI2007]文本生成器 题解 正难则反。求不可读文本更加好求。 按照 AC 自动机先设计一个套路 DP:\(dp(i,j)\) 表示生成长度为 \(i\) ,在 Trie 图上结点 \(j\) 的不可读文本数。 BFS 求 \(fail\) 数组的过程中记录哪些节点不 阅读全文
posted @ 2021-10-09 00:11 conprour 阅读(197) 评论(0) 推荐(0)
摘要:多么AC的算法---【AC自动机】 阅读全文
posted @ 2021-10-04 21:51 conprour 阅读(65) 评论(0) 推荐(0)