首页 > 其他分享 >EGOI2024 简单题解

EGOI2024 简单题解

时间:2024-10-07 17:44:49浏览次数:1  
标签:颜色 奇数 题解 灯泡 son EGOI2024 简单 root

Day1

T1 Infinite Race

由于只有重复超过一个人才肯定是跑过一圈的,所以只用用一个数组做标记就可以了,每超过一次就打上标记,否则去掉标记。

T2 Bouquet

定义 \(dp[i]\) 为,以第 \(i\) 种郁金香结尾的选法中最大可选的郁金香数量, 易得状态转移方程为:

\(dp[i]=max{dep[j]}+1(j<l_i\le i\le n,r_j<i)\)

取其中最大值即是答案。

在用线段树优化即可。

T3 Team Coding

最傻逼的一个题。

考虑根号分治。

对于个数大于 \(\sqrt n\) 的颜色,直接暴力。

对于个数小于 \(\sqrt n\) 的颜色,dfs 乱搞一下即可。

T4 Garden Decorations

vp 的时候没做出来qwq。

其实就是个构造题,感觉挺神秘的。

Day2

T1 Circle Passing

弱智题,二分一下就好了。

T2 Bikeparking

考虑贪心,先最大化 \(j<i\) 的匹配数量,然后尽可能多地保留 \(j=i\) 的匹配即可。

T3 Light Bulbs

考虑随机化。

我们维护确定的横着的灯泡以及竖着的灯泡集合,还有剩下的行与列集合。每确定一个横着的灯泡就删掉这一行,竖着的灯泡同理。

然后就很简单了。

T4 Make them Meet

一条链的情况

奇数轮连边 \(2*i\) 和 \(2*i+1\),偶数轮连边 \(2*i+2\) 和 \(2*i+3\)。这样每个人会在链上不断循环走,经过 \(2n\) 轮后,两个人一定会相遇。

一棵树的情况

奇数轮连所有深度为奇数的点 \(u\) 到 \(fa_u\) 的边,偶数轮同理。同时在每一轮中,都连上 \(root\) 和 \(son\) 的边。

这样在 \(2n\) 轮后,两人一定会在 \(root\) 和 \(son\) 的边上相遇。

一般图的情况

对于树的构造,我们发现只要满足以下的条件就能套用到图上:

  • 对于任意一个点 \(u\) 的所有儿子之间没有连边。(在给 \(u\) 和儿子染同种颜色时不会走错)
  • 对于根节点 \(root\),需要选出一个儿子 \(son\),使得 \(root\) 和 \(son\) 的所有儿子没有连边。(在给 \(root,son\) 和这些点染同种颜色时不会走错)

所以,dfs 后分类讨论一下就好了。

标签:颜色,奇数,题解,灯泡,son,EGOI2024,简单,root
From: https://www.cnblogs.com/jxy2012/p/18450360

相关文章

  • mysql登录遇到ERROR 1045问题解决方法
    遇到MySQL登录时出现 ERROR1045(访问被拒绝,用户名或密码错误),可以通过以下步骤来解决:1.确认用户名和密码检查用户名和密码:确认在连接数据库时输入的用户名和密码是否正确。尝试在命令行中连接数据库,确认是否能成功登录:bash mysql-uyour_username-p2.重......
  • 题解:AT_abc374_c [ABC374C] Separated Lunch
    无耻的广告更好的阅读体验~最近在搞个人博客博客园的差点忘了更了。已经沦落到在写这种水题题解了。题目翻译有\(n\)队人,每个队人数不同,把他们分成2组(同一队的不能拆开),使两组人数差距尽量小。形式化题意:有\(n\)个数,把它们分成两组,使两组和的差尽量小。说句闲话:感觉这......
  • P3527 MET-Meteors 题解
    Solution单次二分:二分时间,做这个时间前的所有操作,然后线性统计。注意到可以整体二分,直接整体二分是\(O(n\log^2n)\)。考虑扫描序列,用线段树维护每个时间段内该位置的增加值,差分一下可以实现。将这棵线段树持久化一下,一个国家所有位置同时二分即可\(O(n\logn)\),可惜空间太......
  • P3250 网络 题解
    Solution单次二分:问“重要度\(\gex\)的所有操作,且\(t\)时间点还存在的所有操作中,是否有不经过这个点的”整体二分:保持操作、询问按时间有序,即预先按时间排序,下传时保持有序;对于一次Solve,对于所有重要度\(\gemid+1\)的操作(加入、删除),考虑与询问按时间混合排序,然后依次......
  • P3215 括号修复 题解
    Statement维护一个括号序列,有以下操作:区间覆盖区间翻转区间反转(左括号变右括号,右括号变左括号)区间问最少改多少位能使括号序列合法,保证有解Solution单纯没想到答案怎么算。。。首先一段括号序,如果消除中间的所有匹配,最终一定形如))))(((,这个信息是可合并的设这时左括......
  • P5416 = UOJ 198 时空旅行 题解
    Statement一棵树,每个节点上有一个集合,每个儿子集合由父亲集合增加一个点\((x_i,c_i)\)或删除一个点得到。根节点集合为\(\{(0,0,0,c_0)\}\)多次询问,每次问\(u\)点的集合内,\(\min\{(x_i-x)^2+c_i\}\)Solution首先你认真读完题发现原题中\(y,z\)都是没用的然后离线DFS......
  • 火星商店问题 题解
    Solution线段树套trie,秒了!\(O(n\log^2n)\)Code#include<bits/stdc++.h>usingnamespacestd;#definerep(i,j,k)for(inti=(j);i<=(k);++i)#definereo(i,j,k)for(inti=(j);i>=(k);--i)typedeflonglongll;constintN=1e5+......
  • Gym 100543G Virus synthesis 题解
    Solution首先只考虑回文串的答案;我们重点考虑的是偶回文串结论:对于偶回文串\(u\),从其最长的长度小于等于他的一半的回文后缀,或其父亲转移过来,一定是最优的证明:设\(u\)的一个回文子串为\(v\)(不是父亲),你要让\(v\tou\)的转移最优首先\(v\)不能跨过\(u\)的中点,因为此......
  • LOJ 6041 事情的相似度 题解
    Statement先把串reverse,多次给\(l,r\),求\[\max_{l\lei<j\ler}\{\text{LCP}(i,j)\}\]Solution\(\text{sqrtlog}\sim\text{sqrt}\):莫队+线段树/树状数组/set,用SA做\(nm/\omega\):bitset乱搞\(\log^2\):SAM+LCT+BIT在parent树上,LCP等于LCA的......
  • P3332 K大数查询 题解
    Solution整体二分板子题vector太好写了111#include<bits/stdc++.h>usingnamespacestd;#definerep(i,j,k)for(inti=(j);i<=(k);++i)#definereo(i,j,k)for(inti=(j);i>=(k);--i)typedeflonglongll;constintN=50010;intn,m,ans[......