XJ5.12 T1

T1可以找到的规律:

  1. \(n\) 为定值,\(m>n\) 的时候,有$ f_{n,m}=3f_{n,m-1}-2f_{n,m-2}$
  2. \(m\) 为定值的时候, \(g_{m,n}\) 是一个线性递推式,长度为 \(2m-1\)
  3. 关于 \(g_{m,n}\) ,下面给出表。
m=1:2
m=2:2 3 1
m=3:2 3 8 5 4 
m=4:2 3 8 20 17 20 16 
m=5:2 3 8 20 48 49 68 80 64 
m=6:2 3 8 20 48 112 129 196 272 320 256 
m=7:2 3 8 20 48 112 256 321 516 784 1088 1280 1024 
m=8:2 3 8 20 48 112 256 576 769 1284 2064 3136 4352 5120 4096 

把上面的表的每一行从中间分开,可以发现有规律。
前面一半都是定值,而后面一半则每次都是上一行对应的位置 \(\times 4\)
4.依旧是上面这张表,可以发现对于前面一半做一个差分,可以得到序列\(1,5,12,28,64,144\dots\)
除去第 \(1\) 项,这个差分序列的第 \(n\) 项为 \(2^{n-2}(n+3)\)

5.可以发现,现在只差最中间的右边那一项,就可以推出整个递推式力!
大眼观察OEIS一下,可以发现其为 \((m-2)*2^{m-1} + 1\)

综上,可以在 \(O(m)\) 的时间复杂度内推出关于 \(g_{m}\) 的线性递推式。

然后就可以根据这个东西走网格来走出点 \((n,m)\)


突然发现这个斜着也有个递推式,长度还为7。
模998244353意义下:

23 998244142 1017 998241521 4692 998239809 2368 998243841 。

加上这个总复杂就变成 \(O(\log n)\) 或者 \(O(\log m)\) 了,因此 n,m 可以拉到1e18

posted @ 2021-05-12 13:26  krimson  阅读(121)  评论(2)    收藏  举报