来自aakennes的新年祝福(欢乐赛)

 


来自aakennes的新年祝福(欢乐赛)

A. 字符串会上树

直接模拟。

(因为没关 freopen 吃了 10 发罚时)

B. 挖宝石

直接上 bitset 即可,对于不是 0 的限制,多记一个 k 即可,最后看 k 不是看 0

C. 电梯系统

考虑每多一层,该层就要向前每层连一条边,而有的边可以和之前的边连在一起,所以每次加边,看看能不能少 1 的贡献,发现每个点都会被后面的点连知道没有边挂在自己这,所以可以直接 O(n) 算。

D. 打游戏

树上DP ,设 fi 表示从 i 点向下延伸一条链的最大贡献是多少,直接转移。

E. 魔法水晶

考率建一个拓扑图出来,然后每层点必须和上一层的点至少一个有连边,和本层点随意连边,和其他点不可连边,O(n) DP 即可。

F. 随机数序列

首先判断可不可行只需要找到第一个确定的数,然后往后算一遍看看和给出的符不符合即可。

接下来求 seed 只需要从第一个确定的数向前反推,比如 x^=(x<<1) 只需要从右到左一位一位异或回去即可。

G. 线段树改造

发现 xy 操作相当于 (x+y+1)mod4 ,可以直接用线段树维护。

H. 赌博

image

瞪了一个小时才看见这句话。

有一个性质是如果有解的话 fn

所以 p 的数据范围就是假的了,直接 O(n) 就做完了。

I. 魔法水晶2

观察这 16 种不合法状态只和下面 10 个点(白色的)有关,并且红点所在直线都是满足 x+y2(mod5) 的,所以每一条红斜线两两互不影响,所以把每一条斜线拿出来单独做。

image

处理一条线 x+y=k 时 ,同时需要关注 x+y=k1,x+y=k2,x+y=k+1,x+y=k+2 上的白点,考虑状压,直接转移即可,但是要注意卡常。

J. 对战

原s!

但是没过

K. 交通网络

首先对时间扫描线,然后我们考虑对于询问 xy ,将贡献拆为 xlcalcay ,操作同样这样拆,直接上树剖即可。

L. 疯狂的矩阵

直接 dfs ,在点 (x,y) 时通过比较 (x+1,y)(x,y+1) 的大小决定下次去哪个点,所以我们要快速求 ai ,可以直接矩阵快速幂,但是直接算 ai 是一个 6×6 的矩阵,会 T ,类似于斐波那契数列的一个公式: i=0nFi2=FnFn+1 ,可以得出 an=xn+1xnx0(x1x0) ,这样矩阵就是 2×2 的,时间复杂度算出来很对 。

M. 超级计算机

答案是逆序对个数,直接把一段区间缩成一个点然后归并排序即可。

N. 线段树改造2

题目保证运算符有结合律,所以直接线段树即可,难点在于计算中缀表达式。

posted @   lzrG23  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
点击右上角即可分享
微信分享提示