提出 #36313584
ソースコード 拡げる
P,N,M = 998244353,*gets.split.map(&:to_i)
I = N-1
exit p 0 if M<I
ICI,C1,C3,FD = lambda{|x,p|
fn = 1,1
ir = 1,1
fd = 1,1
n = r = d = 1
2.upto(x){|i|
fn<<n = n*i%p
ir<<r = p-ir[p%i]*(p/i)%p # 謎
fd<<d = d*r%p
}
fn.shift I-1
next fn[1]*fd[I-1]%P,lambda{|r|
fd[r]*fd[I-r]%p
},lambda{|r|
fn[r]*fd[r]%p
},fd
}.call (M-I)/3+I,P
A = FD[0..I/2].map.with_index{|fdr,r| fdr*FD[I-r]%P }
s,*S = 0
t,*T = 0
n = N+1
A.each{|c1|
S<<s = (s+c1)%P
T<<t = (t+c1*n-=1)%P
}
A.pop if I&1<1
while c1 = A.pop
S<<s = (s+c1)%P
T<<t = (t+c1*n-=1)%P
end
m = M-I+3
s = S[I]
t = T[I]
p ICI*(0..(M-I)/3).sum{|n3|
m -= 3
# n1: 0..[m,I].min
# n0: m..[0,m-I].max
if m<I
s = S[m]
t = T[m]
end
next C3[n3]*(t+s*(m-I))%P
}%P
提出情報
| 提出日時 | |
|---|---|
| 問題 | G - Count Sequences |
| ユーザ | ds14050 |
| 言語 | Ruby (2.7.1) |
| 得点 | 600 |
| コード長 | 773 Byte |
| 結果 | AC |
| 実行時間 | 3938 ms |
| メモリ | 434632 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 600 / 600 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_smallNM_00.txt, 01_smallNM_01.txt, 01_smallNM_02.txt, 01_smallNM_03.txt, 01_smallNM_04.txt, 01_smallNM_05.txt, 01_smallNM_06.txt, 01_smallNM_07.txt, 01_smallNM_08.txt, 01_smallNM_09.txt, 01_smallNM_10.txt, 01_smallNM_11.txt, 02_smallN_00.txt, 02_smallN_01.txt, 02_smallN_02.txt, 02_smallN_03.txt, 02_smallN_04.txt, 02_smallN_05.txt, 02_smallN_06.txt, 03_rnd_00.txt, 03_rnd_01.txt, 03_rnd_02.txt, 03_rnd_03.txt, 03_rnd_04.txt, 03_rnd_05.txt, 03_rnd_06.txt, 03_rnd_07.txt, 04_max_00.txt, 04_max_01.txt, 04_max_02.txt, 04_max_03.txt, 04_max_04.txt, 04_max_05.txt, 04_max_06.txt, 04_max_07.txt, 04_max_08.txt, 04_max_09.txt, 04_max_10.txt, 04_max_11.txt, 04_max_12.txt, 04_max_13.txt, 04_max_14.txt, 04_max_15.txt, 04_max_16.txt, 04_max_17.txt, 04_max_18.txt, 04_max_19.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 56 ms | 14196 KiB |
| 00_sample_01.txt | AC | 1806 ms | 117264 KiB |
| 01_smallNM_00.txt | AC | 54 ms | 14040 KiB |
| 01_smallNM_01.txt | AC | 54 ms | 14264 KiB |
| 01_smallNM_02.txt | AC | 56 ms | 14096 KiB |
| 01_smallNM_03.txt | AC | 56 ms | 14068 KiB |
| 01_smallNM_04.txt | AC | 55 ms | 14160 KiB |
| 01_smallNM_05.txt | AC | 54 ms | 14260 KiB |
| 01_smallNM_06.txt | AC | 57 ms | 14164 KiB |
| 01_smallNM_07.txt | AC | 56 ms | 13964 KiB |
| 01_smallNM_08.txt | AC | 55 ms | 14004 KiB |
| 01_smallNM_09.txt | AC | 54 ms | 14052 KiB |
| 01_smallNM_10.txt | AC | 55 ms | 14188 KiB |
| 01_smallNM_11.txt | AC | 59 ms | 14116 KiB |
| 02_smallN_00.txt | AC | 1202 ms | 92316 KiB |
| 02_smallN_01.txt | AC | 1218 ms | 104664 KiB |
| 02_smallN_02.txt | AC | 1780 ms | 104784 KiB |
| 02_smallN_03.txt | AC | 1766 ms | 104900 KiB |
| 02_smallN_04.txt | AC | 1785 ms | 104992 KiB |
| 02_smallN_05.txt | AC | 1816 ms | 116956 KiB |
| 02_smallN_06.txt | AC | 1764 ms | 117076 KiB |
| 03_rnd_00.txt | AC | 56 ms | 14164 KiB |
| 03_rnd_01.txt | AC | 1184 ms | 132288 KiB |
| 03_rnd_02.txt | AC | 58 ms | 14168 KiB |
| 03_rnd_03.txt | AC | 2815 ms | 278172 KiB |
| 03_rnd_04.txt | AC | 55 ms | 14132 KiB |
| 03_rnd_05.txt | AC | 2352 ms | 218112 KiB |
| 03_rnd_06.txt | AC | 52 ms | 13972 KiB |
| 03_rnd_07.txt | AC | 1039 ms | 119772 KiB |
| 04_max_00.txt | AC | 3929 ms | 434632 KiB |
| 04_max_01.txt | AC | 2926 ms | 266068 KiB |
| 04_max_02.txt | AC | 2371 ms | 210656 KiB |
| 04_max_03.txt | AC | 2074 ms | 144756 KiB |
| 04_max_04.txt | AC | 1914 ms | 130888 KiB |
| 04_max_05.txt | AC | 3882 ms | 434316 KiB |
| 04_max_06.txt | AC | 55 ms | 14124 KiB |
| 04_max_07.txt | AC | 55 ms | 14240 KiB |
| 04_max_08.txt | AC | 3916 ms | 434240 KiB |
| 04_max_09.txt | AC | 3904 ms | 434300 KiB |
| 04_max_10.txt | AC | 3900 ms | 434236 KiB |
| 04_max_11.txt | AC | 56 ms | 14252 KiB |
| 04_max_12.txt | AC | 3914 ms | 434256 KiB |
| 04_max_13.txt | AC | 3893 ms | 434300 KiB |
| 04_max_14.txt | AC | 3909 ms | 434448 KiB |
| 04_max_15.txt | AC | 3922 ms | 434192 KiB |
| 04_max_16.txt | AC | 3896 ms | 434332 KiB |
| 04_max_17.txt | AC | 3893 ms | 434264 KiB |
| 04_max_18.txt | AC | 3905 ms | 434288 KiB |
| 04_max_19.txt | AC | 3938 ms | 434084 KiB |