提出 #6216543
ソースコード 拡げる
import numpy as np
N = int(input())
A = np.array(input().split(), dtype=np.int64)
MOD = 10 ** 9 + 7
def comb(n,k):
# kが十分小さい
num,den = 1,1
for i in range(k):
num *= (n-i)
den *= (i+1)
num %= MOD
den %= MOD
return num * pow(den,MOD-2,MOD) % MOD
idx = np.nonzero(A+1)[0]
left = A[idx[:-1]]
right = A[idx[1:]]
n = np.diff(idx) - 1 # 間の個数
answer = 1
for L,R,N in zip(left,right,n):
answer *= comb(R-L+N,N)
answer %= MOD
print(answer)
提出情報
ジャッジ結果
| セット名 | Sample | Subtask1 | Subtask2 | Subtask3 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 50 / 50 | 30 / 30 | 20 / 20 | ||||||||
| 結果 |
|
|
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt |
| Subtask2 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt |
| Subtask3 | sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask3_04.txt, subtask3_05.txt, subtask3_06.txt, subtask3_07.txt, subtask3_08.txt, subtask3_09.txt, subtask3_10.txt, subtask3_11.txt, subtask3_12.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| sample_01.txt | AC | 151 ms | 12520 KiB |
| sample_02.txt | AC | 151 ms | 12508 KiB |
| sample_03.txt | AC | 151 ms | 12508 KiB |
| subtask1_01.txt | AC | 151 ms | 12508 KiB |
| subtask1_02.txt | AC | 152 ms | 12504 KiB |
| subtask1_03.txt | AC | 151 ms | 12504 KiB |
| subtask1_04.txt | AC | 151 ms | 12508 KiB |
| subtask1_05.txt | AC | 152 ms | 12504 KiB |
| subtask1_06.txt | AC | 151 ms | 12504 KiB |
| subtask1_07.txt | AC | 152 ms | 12380 KiB |
| subtask1_08.txt | AC | 151 ms | 12504 KiB |
| subtask1_09.txt | AC | 153 ms | 12504 KiB |
| subtask1_10.txt | AC | 151 ms | 12508 KiB |
| subtask1_11.txt | AC | 152 ms | 12508 KiB |
| subtask1_12.txt | AC | 151 ms | 12508 KiB |
| subtask2_01.txt | AC | 152 ms | 12408 KiB |
| subtask2_02.txt | AC | 150 ms | 12408 KiB |
| subtask2_03.txt | AC | 150 ms | 12508 KiB |
| subtask2_04.txt | AC | 153 ms | 12408 KiB |
| subtask2_05.txt | AC | 158 ms | 12380 KiB |
| subtask2_06.txt | AC | 151 ms | 12504 KiB |
| subtask2_07.txt | AC | 155 ms | 12408 KiB |
| subtask2_08.txt | AC | 156 ms | 12508 KiB |
| subtask2_09.txt | AC | 156 ms | 12504 KiB |
| subtask2_10.txt | AC | 157 ms | 12408 KiB |
| subtask2_11.txt | AC | 159 ms | 12492 KiB |
| subtask2_12.txt | AC | 160 ms | 12492 KiB |
| subtask3_01.txt | AC | 151 ms | 12380 KiB |
| subtask3_02.txt | AC | 151 ms | 12508 KiB |
| subtask3_03.txt | AC | 151 ms | 12508 KiB |
| subtask3_04.txt | AC | 160 ms | 12508 KiB |
| subtask3_05.txt | AC | 153 ms | 12504 KiB |
| subtask3_06.txt | AC | 157 ms | 12408 KiB |
| subtask3_07.txt | AC | 156 ms | 12376 KiB |
| subtask3_08.txt | AC | 155 ms | 12508 KiB |
| subtask3_09.txt | AC | 157 ms | 12508 KiB |
| subtask3_10.txt | AC | 159 ms | 12504 KiB |
| subtask3_11.txt | AC | 156 ms | 12504 KiB |
| subtask3_12.txt | AC | 163 ms | 12508 KiB |