結果
問題 | No.2535 多重同値 |
ユーザー |
![]() |
提出日時 | 2023-11-10 22:17:57 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 113 ms / 2,000 ms |
コード長 | 632 bytes |
コンパイル時間 | 443 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 82,048 KB |
最終ジャッジ日時 | 2024-09-26 01:44:26 |
合計ジャッジ時間 | 2,017 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 20 |
ソースコード
import sys input = sys.stdin.readline n=int(input()) P=[] for i in range(n): p=input().rstrip() if n==1: print(p) exit() if p=="Yes": P.append(1) else: P.append(0) memo=[0]*n for i in range(n-2,-1,-1): if P[i]==P[i+1]: flg=1 else: flg=0 if flg==P[i]: memo[i]=memo[i+1] else: memo[i]=1-memo[i+1] if P[-2]==P[-1]: now=1 else: now=0 for i in range(n-3,-1,-1): if now==P[i]: now=1 else: now=0 ans=[0]*n ans[-1]=now for i in range(n-2,-1,-1): if memo[i]==0: ans[i]=ans[-1] else: ans[i]=1-ans[-1] for i in ans: if i==0: print("No") else: print("Yes")