NOI2023 前记录
6.20 考试
[洛谷 P6787]「SWTR-6」Snow Mountain
[洛谷 P4060] [Code+#1] 可做题
[洛谷 P4061] [Code+#1] 大吉大利,晚上吃鸡!
[洛谷 P4062] [Code+#1] Yazid 的新生舞会
6.21
[AGC023E] Inversions
https://www.luogu.com.cn/blog/174304/solution-at3956。
6.23
[CF331E2] Deja Vu
状态机 DP。
https://www.luogu.com.cn/blog/sysblogs/solution-cf331e2。
[CF643G] Choosing Ads
类摩尔投票。
https://www.luogu.com.cn/blog/68148/solution-cf643g。
[CF679E] Bear and Bad Powers of 42
势能线段树。
https://www.luogu.com.cn/blog/AlexWei/solution-cf679e。
6.24 考试
[清华集训2016] Alice 和 Bob 又在玩游戏
SG 函数 + 01Trie 合并。神仙题。
https://www.luogu.com.cn/blog/xxg/p6665-qing-hua-ji-xun-2016-alice-hu-bob-you-zai-wan-you-hu。
[清华集训2016] 汽水
套路分数规划 + 点分治,分权值总和正负分类讨论。
https://blog.csdn.net/as_a_kid/article/details/88082480。
[清华集训2016] 数据交互(没写)
https://www.luogu.com.cn/problem/solution/P6666。
6.25
[AGC029F] Construction of a tree
Hall 定理 + 结论 + 二分图匹配。
https://www.luogu.com.cn/blog/LCA/solution-at4505。
[ARC098F] Donation
老经典了。逆向思维 + Kruskal 重构树上 DP。
https://www.luogu.com.cn/blog/hegm/solution-at-arc098-d。
[AGC023D] Go Home
递归的思想 + 模拟。这个策略很厉害。
https://www.luogu.com.cn/blog/wozaixuexi/solution-at3955。
6.26
[CF505E] Mr. Kitayuta vs. Bamboos
逆向思维 + 堆模拟。这怎么想得到阿?
https://www.luogu.com.cn/blog/AutumnKite/solution-cf505e。
[CF576D] Flights for Regular Customers
自己竟然差不多想出来了。震撼。
将边按照 \(d_i\) 从小到大排序,每次跑 floyd 得到这个时刻之前能够到达哪些点,然后更新邻接矩阵,BFS 得到到每个点的最小时间。如果此时能够到 \(n\) 那么直接输出就行了。
https://www.luogu.com.cn/blog/xht37/solution-cf576d。
6.27
[AGC030D] Inversion Sum
咋和 CF258D 一模一样阿。。。这就是做过的题不会做了吗。震撼。
这道题多了一步总和转期望,就变成了概率 DP。忘记了。。。
https://www.luogu.com.cn/blog/LinearExpectation/solution-at4513。
7.7
牛客练习赛 113 G - 小红的好子序列(hard)
https://ac.nowcoder.com/acm/contest/60282/G。
枚举“好数组”中那一个出现次数不小于数组大小的一半的数,贡献是组合数形式。
由于不同的出现次数只有 \(\mathcal{O}(\sqrt n)\) 个,所以可以预处理这一些数作为上指标的组合数。
推一下式子,就很好做了。
https://ac.nowcoder.com/acm/contest/view-submission?submissionId=62632597。
7.8
牛客练习赛 113 H - 小红的括号串权值
https://ac.nowcoder.com/acm/contest/60282/H。
建出表达式树。
容易发现肯定是对于同一层从右往左删,从最底层开始删。
那么可以用树形 DP 描述这个过程。
具体可以见题解:https://ac.nowcoder.com/discuss/1168402?type=101&order=0&pos=6&page=1&channel=-1&source_id=1。
https://ac.nowcoder.com/acm/contest/view-submission?submissionId=62634241。
[CF538H] Summer Dichotomy
先把两个值设为 \(x=\max\{l_i\}\) 和 \(y=\min\{r_i\}\)。然后再根据范围增大 \(x\) 或者减小 \(y\)。
之后二分图判定。最后输出。证明见题解。
https://codeforc.es/problemset/submission/538/212756006。
[CF53E] Dead Ends
数据范围小得离谱,考虑状压 DP。
设 \(f_{s,t}\) 表示已经加入树中的集合为 \(s\),叶子集合为 \(t\) 的方案数。
转移直接枚举一个节点接上去就行了。
但是显然会算重,不过可以发现的是方案数会被算叶子个数倍数次,将 DP 值除以叶子个数就行了。
https://codeforc.es/problemset/submission/53/212788256。
[CF266E] More Queries to Array...
二项式定理拆开那个式子。
然后对于每一个 \(j\in[0,5]\),用线段树维护 \(\sum a_i(i+1)^j\)。
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号