結果
問題 |
No.2518 Adjacent Larger
|
ユーザー |
![]() |
提出日時 | 2023-10-27 22:23:08 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,423 bytes |
コンパイル時間 | 296 ms |
コンパイル使用メモリ | 82,792 KB |
実行使用メモリ | 103,980 KB |
最終ジャッジ日時 | 2024-09-25 14:26:09 |
合計ジャッジ時間 | 4,686 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 23 WA * 5 |
ソースコード
# 実験してみると # 和がNであり、0が常に1つ以上あり、マックスが2である必要ある # さらに2は連続できない、0も連続できない # WA, 010もありえない、011110のようなのもありえない T = int(input()) for t in range(T): N = int(input()) A = list(map(int, input().split())) zero_test = False max_test = True sum_test = False if sum(A)==N: sum_test = True for a in A: if a == 0: zero_test = True if a > 2: max_test = False zero_consec_test = True two_consec_test = True for i in range(N): if A[(i-1)%N]==2 and A[i]==2: two_consec_test = False if A[(i-1)%N]==0 and A[i]==0: zero_consec_test = False zeroone_check = False zeroone_test = True for i in range(N): if zeroone_check == False: if A[(i-1)%N]==0 and A[i]==1: zeroone_check = True else: if A[i] == 2: zeroone_check = False elif A[i] == 1: pass elif A[i] == 0: zeroone_test = False ans = 'No' if sum_test == True and zero_test == True and max_test == True: if zero_consec_test == True and two_consec_test == True and zeroone_test == True: ans = 'Yes' print(ans) #print('zeroone_test', zeroone_test)