結果
問題 | No.1707 Simple Range Reverse Problem |
ユーザー | gr1msl3y |
提出日時 | 2021-10-15 21:43:25 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 50 ms / 2,000 ms |
コード長 | 750 bytes |
コンパイル時間 | 154 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 59,264 KB |
最終ジャッジ日時 | 2024-09-17 17:21:44 |
合計ジャッジ時間 | 1,700 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 18 |
ソースコード
def main(): T = int(input()) ans = [] for _ in range(T): N = int(input()) A = list(map(int, input().split())) ans.append('Yes' if solve(N, A) else 'No') print(*ans, sep='\n') def solve(N, A): w = 0 for i in range(N): if not A[i] == A[i+N] == i+1: break else: return True for i in range(N): if A[i] != i+1: w = i break else: w = N for i in range(w, 2*w-1): if A[i] != 2*w-i-1: return False for i in range(2*w-1, w+N): if A[i] != N+2*w-i-1: return False for i in range(w+N, 2*N): if A[i] != i-N+1: return False else: return True main()