結果

問題 No.2792 Security Cameras on Young Diagram
コンテスト
ユーザー ipha
提出日時 2026-08-26 00:31:43
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
AC  
実行時間 292 ms / 2,000 ms
+ 520µs
コード長 570 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 302 ms
コンパイル使用メモリ 21,544 KB
実行使用メモリ 35,140 KB
最終ジャッジ日時 2026-08-26 00:31:52
合計ジャッジ時間 5,742 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

n=int(input())
A=list(map(int,input().split()))
A+=[0]
p=998244353
def kaimod(n,p):
  l=[1]
  a=1
  for i in range(1,n+1):
    a=(a*i)%p
    l+=[a]
  b=pow(a,p-2,p)
  ll=[1]*(n+1)
  ll[n]=b
  for i in range(n-1,1,-1):
    b=(b*(i+1))%p
    ll[i]=b
  return([l,ll])
q=kaimod(A[0]+n,p)
kai=q[0]
kair=q[1]
def binom(n,m):
  return((((kai[n+m]*kair[m])%p)*kair[n])%p)
ans=1
x=A[0]+1
for i in range(1,n+1):
  if A[i-1]>A[i]:
    x-=1
    ans=(ans+binom(x-1,i-1))%p
  while x>=A[i]+2:
    x-=1
    ans=(ans+binom(x-1,i-1))%p
  if i!=n:
     ans=(ans+binom(x-2,i))%p
print(ans)
0