【Atcoder】AGC030 B-F简要题解

这篇博客详细介绍了Atcoder AGC030比赛中的五道题目解题思路。B题解决树燃烧问题,通过计算点到原点的前缀和并枚举分界点找到最优解;C题在K×K矩阵上构造合法颜色填充,当K较大时,采用特定公式构造偶数行和奇数行;D题利用期望的动态规划求解Inversion Sum的概率;E题通过转换序列中连续0和1的段来计算翻转次数;F题使用值域上的动态规划解决Permutation和Minimum的匹配问题,考虑不同类型的括号组合和匹配方式。
摘要由CSDN通过智能技术生成

B.Tree Burning

最后一定存在一个分界点,满足在分界点两边的点反复横跳(点多的一边会先走几步),记录所有点顺时针/逆时针到原点的前缀和,枚举分界点取 max ⁡ \max max即可。


*C.Coloring Torus

K ≤ 500 K\leq 500 K500直接构造 K × K K\times K K×K的矩阵,第 i i i行填 i i i

K &gt; 500 K&gt;500 K>500,发现构造奇数行 c i , j = ( i + j ( m o d n ) ) + 1 c_{i,j}=(i+j\pmod n)+1 ci,j=(i+j(modn))+1,偶数行 c i , j = ( i + j ( m o d ) ) + n + 1 c_{i,j}=(i+j\pmod)+n+1 ci,j=(i+j(mod))+n+1一定合法(若 c i , j &gt; K c_{i,j}&gt;K ci,j>K,直接 − n -n n)。所以 n = 2 ⌈ K 4 ⌉ n=2\lceil\frac{K}{4}\rceil n=2<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值