发现做题笔记屡次停更的根本原因是做的无聊题太多,不想更笔记,拖的时间长了笔记就更新不过来了。
从这篇笔记开始只记录精彩巧妙的题。
\(1 \sim 25\)
\(\color{blue}(1)\) CF1270G Subset with Zero Sum
\(^*2700\);构造;图论;基环树
给定长度为 \(n \; (1 \le n \le 10^6)\) 的序列 \(a_1,a_2,\ldots,a_n \color{blue} \; (i - n \le a_i \le i - 1)\),找出一个子集使得其和为 \(0\)。
神题。
考虑化简不等式得到 \(1 \le i - a_i \le n\),如果把 \(i\) 向 \(to_i = i - a_i\) 连边可以得到一棵内向基环森林。
注意到环上的点满足 \(\sum i = \sum to_i\),也即 \(\sum i = \sum i - a_i\),去掉 \(\sum i\) 后得到 \(\sum a_i = 0\),满足题目要求。时间复杂度线性。
标签:blue,le,color,sum,笔记,IIII From: https://www.cnblogs.com/sunkuangzheng/p/18085410