結果

問題 No.3082 Make Palindromic Multiple(Judge)
ユーザー ゼット
提出日時 2025-03-28 23:04:05
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 839 bytes
コンパイル時間 261 ms
コンパイル使用メモリ 82,212 KB
実行使用メモリ 111,868 KB
最終ジャッジ日時 2025-03-28 23:04:37
合計ジャッジ時間 31,457 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 56 WA * 1 TLE * 1 -- * 8
権限があれば一括ダウンロードができます

ソースコード

diff #

N=int(input())
L=[]
for i in range(N):
  s,x=input().split()
  x=int(x)
  L.append((s,x))
v=[998244353,10**9+7]
e=107
for mod in v:
  w=0
  c=0
  for i in range(N):
    s,x=L[i][:]
    n=len(s)
    q=pow(e,c,mod)
    c+=n*x
    h=0
    for i in range(n):
      z=int(s[i])
      h+=z*pow(e,i,mod)
      h%=mod
    m=pow(e,n*x,mod)-1
    g=pow(e,n,mod)-1
    m*=pow(g,-1,mod)
    m%=mod
    l=m*h
    l%=mod
    l*=q
    l%=mod
    w+=l
    w%=mod
  w2=0
  c=0
  for i in range(N-1,-1,-1):
    s,x=L[i][:]
    s=s[::-1]
    n=len(s)
    q=pow(e,c,mod)
    c+=n*x
    h=0
    for i in range(n):
      z=int(s[i])
      h+=z*pow(e,i,mod)
      h%=mod
    m=pow(e,n*x,mod)-1
    g=pow(e,n,mod)-1
    m*=pow(g,-1,mod)
    m%=mod
    l=m*h
    l%=mod
    l*=q
    l%=mod
    w2+=l
    w2%=mod
  if w!=w2:
    print('No')
    exit()
print('Yes')
0