8

提交统计 # 标题
已解决 16 / 23 A Flip Cards
已解决 15 / 19 B Distinct Adjacent
已解决 13 / 20 C Playlist
已解决 12 / 13 D Unfair Sugoroku
已解决 9 / 12 E Revenge of "The Salary of AtCoder Inc."
已解决 16 / 20 F Poisonous Full-Course
已解决 14 / 33 G Shift vs. CapsLock
已解决 11 / 17 H Product Development
已解决 14 / 17 I Defect-free Squares
已解决 15 / 22 J Maximize Rating

8

闲话

不知道怎么了,梦熊好像突然开窍了,给我们搞上计数/概率/期望DP了。这是做的最慢的一次,也是做的最难受的一次,我希望梦熊以后还是少放点这种东西吧。(毕竟概率期望太少考了)

A

\(N\) 张卡片,有正反两面,两面各有一个数字,要求对于每一对相邻的卡片,他们朝上的一面是不同的,求有多少种翻牌方式,对 \(998244353\) 取模。

这东西,太好做了! 考虑直接 DP ,令 \(f_{i,0/1}\) 为到第 \(i\) 个数,正面或者反面的情况数. 初始化就是 \(f_{i,0}=f_{i,1}=1\) 然后后面直接推就是了.

B

有一个环,在环上要放置介于 \(0\)\(M-1\) 的整数,要求相邻的人不能有相同的数,求有多少种情况,对 \(998244353\) 取模.

对于每一个位置可以维护是否与第一个数相等.

\(f_{i,0/1}\)\(i\) 这个数与第一个数不相等/相等. 初始化不要想多了,就按照你状态的设计来做 \(f_{i,0}=0,f_{i,1}=m\) 就好了. 后面递推也是好想的, \(f_{i,1}\) 因为只能是第一个数,并且还要和上一个数不同,所以直接继承上一个数的 \(f_{i-1,0}\) 状态就可以. \(f_{i,0}\) 就麻烦点,需要继承 $f_{i-1,1} $ 和 \(f_{i-1,0}\) 两个状态,根据乘法原理以及题目要求和状态设计,实际上很好得出来递推式, \(f_{i,0}=f_{i-1,0}*(m-2)+f_{i-1,1}*(m-1)\) .

记得取模.

C

\(N\) 种小木棍,每种都有无限根,现在我们要把他们拼成一个长木棍,求在 \((x+0.5)\) 处是木棍 \(1\) 的概率.

我真是对于概率/期望一窍不通.

下面是题解搬运.

考虑动态规划,设计状态,\(f_i\) 表示时刻\(i\)正好结果播出某首歌的总概率。所以 \(f_i \to f_i + f_{i \cdot t_j} (1 \leq j \leq N, t_j \leq i)\)

最后的答案就是 \(f_{x-t_{1}+1} + f_{x- t_{1} + 2} + \cdots + f_{x}\)
为什么呢?
因为第一首歌的播放时间为 \(f_1\) 所以在 \(x - t_1 + 1\)\(x\) 之间都行,把左端点和右端点都加上 \(t_1\) 左端点就变成了 \(x + 1\) ,右端点就变成了 $ x + t_{1}$ 。

怎么样?简单吧.当时可是花了我快一个小时!

D

考虑 \(f_{i,j,t}\) 作为状态表示到 \(t\) 回合,tak走了i步,aok走了j步.

然后就枚举每一步走多少,到第几回合,从什么地方开始走就好了.

E

虽然还是抄的题解,但是......

这道题你就枚举到每一个数字的概率是多少,然后概率乘上这个数字的代价,就顺序下去乘就好咯.

F

做完前面的题之后就觉得这东西好清秀啊,你就模拟就好了,最好做的一道题,没有之一!

G

简单的计数题.按照题意模拟状态设计就可以了.真没啥难度.

H

直接哈希一下搞个背包就行了.次简单的一道题,就是哈希容易坏掉.

I

你发现这个方格的大小只和它的上面,左面,左上面有关.于是递推就好了.第四简单的一道题,因为这东西还需要发现.

J

第三简单的一道题.直接套用背包,题目中公式都给你了,你这还不会就是 yjhhgjxxxxx 了.

总结

怀疑最近梦熊变聪明了,喜欢难度降序是吧.

posted @ 2025-12-26 09:33  小林琴奈  阅读(7)  评论(0)    收藏  举报