ICPC_2022_绵阳站赛后补题

一共是补了5个题 H题嗯是没看明白 

先写思路 以后找时间补上

A.Ban or Pick, What's the Trick

首先观察数据范围 最重要的是k只有10个!!!

然后我们知道 每次肯定要么选自己的最强的 要么ban对面最强的 

所以在每一回合中 如果我们已知回合数以及自己选了多少 对面选了多少 就知道双方的bp情况了 

所以这样的一个状态是固定的 至于并且很好转移 所以dp加上记忆化搜索就很自然的出现了 

令dp[n][a][b] 表示第n次操作已经选了a个A中 b个B中的角色 

每次考虑选还是ban 然后转移即可 

C.Catch You Catch Me

直接统计一下每个子树的深度答案就出来了 签到题

D.Gambler's Ruin

将pi排下序 会发现一定是前面一坨人押2队,后面一坨人押1队 并且我们肯定是让赔率刚好卡在边界上 

然后枚举前面有多少人 现在考虑sx+sy-max{sx*x,sy*y} 这个式子 

sx已知了 当sy增大时 sy*y也在增大 所以枚举后面有多少人的话 这个式子是一个单峰函数 直接三分即可 

G.Let Them Eat Cake

模拟题 嗯做就行 每次踢出去一半人以上 最多也就nlogn

M.Rock-Paper-Scissors Pyramid

模拟每次加入一个新的石头剪刀布 它在金字塔上右边爬楼梯的过程 
如果它能一直赢下去 那么它会一直打赢它左边的人 直到有一个人打赢它 最后换成打赢它的人继续向上 
所以对于金字塔的又腰来说 就是用ai一直向上打 打不能打为止 原来的石头剪刀布依然保持不动   
所以可以抽象地维护成一个栈 然后每次加入新的用栈顶元素和现在的继续比较 只到有一个元素可以打过现在的元素 把现在的元素入栈 
最后输出栈底的元素即可 
posted @ 2022-11-29 17:22  Vellichor_zht  阅读(115)  评论(0)    收藏  举报