20210926下午

20210926下午

好经典的题,一看 T 5 T5 T5都是19年做的了,已经是老人了。
请添加图片描述

T1T2T3T4T5
预测100100100100100
一测0100100100100

T1:
即求划分数,公式为 F i , j = F i − 1 , j − 1 + F i − j , j F_{i,j}=F_{i-1,j-1}+F_{i-j,j} Fi,j=Fi1,j1+Fij,j,经典 64 M B 64MB 64MB l o n g    l o n g long\ \ long long  long炸掉,开 i n t int int中间处理一下就行。
T2:
题目即要求出小于等于 n n n的约数个数最多的数,显然优先选择更小的质数,因为 37 37 37以内的质数乘起来就超过 2 e 9 2e9 2e9了,所以用10几个质数搜一下就行。(其实会发现反质数根本没几个,打个表也能随便过。
T3:
反向思考,用全部可能减去不会越狱的可能,全部可能为 m n m^n mn,不会越狱的情况第一个监狱有 m m m种信教选择,后面的都只有 ( m − 1 ) (m-1) (m1)种,所以为 m × ( m − 1 ) n − 1 m\times (m-1)^{n-1} m×(m1)n1,快速幂即可。
T4:
经典矩阵加速,发现 T n T_n Tn这个东西不太好放进矩阵转移,不如考虑构造新数列,设 Q n = n × S n − T n Q_n=n\times S_n-T_n Qn=n×SnTn,所以 Q n = ( n − 1 ) × F 1 + ( n − 2 ) × F 2 + ⋯ + F n − 1 Q_n=(n-1)\times F_1+(n-2)\times F_2+\dots +F_{n-1} Qn=(n1)×F1+(n2)×F2++Fn1,观察前后 Q n Q_n Qn,发现 Q Q Q数列可以用 Q n = Q n − 1 + S n − 1 Q_n=Q_{n-1}+S_{n-1} Qn=Qn1+Sn1来转移,所以将 Q n Q_n Qn放入矩阵,最后用 T n = n × S n − Q n T_n=n\times S_n-Q_n Tn=n×SnQn得到答案。矩阵推导如下:
{ Q n S n F n F n − 1 } = { Q n − 1 + S n − 1 S n − 1 + F n F n − 1 + F n − 2 F n − 1 } = { 1 × Q n − 1 + 1 × S n − 1 + 0 × F n − 1 + 0 × F n − 2 0 × Q n − 1 + 1 × S n − 1 + 1 × F n − 1 + 1 × F n − 2 0 × Q n − 1 + 0 × S n − 1 + 1 × F n − 1 + 1 × F n − 2 0 × Q n − 1 + 0 × S n − 1 + 1 × F n − 1 + 0 × F n − 2 } = { 1 , 1 , 0 , 0 0 , 1 , 1 , 1 0 , 0 , 1 , 1 0.0 , 1 , 0 } × { Q n − 1 S n − 1 F n − 1 F n − 2 } = … = { 1 , 1 , 0 , 0 0 , 1 , 1 , 1 0 , 0 , 1 , 1 0 , 0 , 1 , 0 } n − 1 × { Q 1 S 1 F 1 F 0 } = { 1 , 1 , 0 , 0 0 , 1 , 1 , 1 0 , 0 , 1 , 1 0 , 0 , 1 , 0 } n − 1 × { 0 1 1 0 } \begin{Bmatrix} Q_n \\ S_n \\ F_n \\ F_{n-1} \\ \end{Bmatrix} \\= \begin{Bmatrix} Q_{n-1}+S_{n-1} \\ S_{n-1}+F_n \\ F_{n-1}+F_{n-2} \\ F_{n-1} \end{Bmatrix}\\= \begin{Bmatrix} 1\times Q_{n-1}+1\times S_{n-1}+0\times F_{n-1}+0\times F_{n-2} \\ 0\times Q_{n-1}+1\times S_{n-1}+1\times F_{n-1}+1\times F_{n-2} \\ 0\times Q_{n-1}+0\times S_{n-1}+1\times F_{n-1}+1\times F_{n-2} \\ 0\times Q_{n-1}+0\times S_{n-1}+1\times F_{n-1}+0\times F_{n-2} \end{Bmatrix}\\=\begin{Bmatrix} 1,1,0,0 \\ 0,1,1,1 \\ 0,0,1,1 \\ 0.0,1,0 \end{Bmatrix}\times \begin{Bmatrix} Q_{n-1} \\ S_{n-1} \\ F_{n-1} \\ F_{n-2} \end{Bmatrix}\\=\dots \\=\begin{Bmatrix} 1,1,0,0 \\ 0,1,1,1 \\ 0,0,1,1 \\ 0,0,1,0 \end{Bmatrix}^{n-1}\times\begin{Bmatrix} Q_1 \\ S_1 \\ F_1 \\ F_0 \end{Bmatrix}\\=\begin{Bmatrix} 1,1,0,0 \\ 0,1,1,1 \\ 0,0,1,1 \\ 0,0,1,0 \end{Bmatrix}^{n-1}\times\begin{Bmatrix} 0 \\ 1 \\ 1 \\ 0 \end{Bmatrix} QnSnFnFn1=Qn1+Sn1Sn1+FnFn1+Fn2Fn1=1×Qn1+1×Sn1+0×Fn1+0×Fn20×Qn1+1×Sn1+1×Fn1+1×Fn20×Qn1+0×Sn1+1×Fn1+1×Fn20×Qn1+0×Sn1+1×Fn1+0×Fn2=1,1,0,00,1,1,10,0,1,10.0,1,0×Qn1Sn1Fn1Fn2==1,1,0,00,1,1,10,0,1,10,0,1,0n1×Q1S1F1F0=1,1,0,00,1,1,10,0,1,10,0,1,0n1×0110
T5:
题目明示割点,那么我们以割点隔开的连通块以一个状态来计算。
1.若这个联通块内没有割点,那么就需要两个出口,防止炸了出口就无法出去。
2.若有一个割点那就建一个出口,炸割点就从出口出去,炸出口就从割点往外跑。
3.若有两个以上的割点那就不用建,不管炸哪都能从割点跑到其他连通块。
方案数只需统计一下连通块内非割点个数,组合数一下就行。
总结:老题回顾,那是我逝去的青春。
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值