結果
| 問題 | No.629 グラフの中に眠る門松列 | 
| コンテスト | |
| ユーザー |  maspy | 
| 提出日時 | 2020-02-02 00:38:36 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 338 ms / 4,000 ms | 
| コード長 | 696 bytes | 
| コンパイル時間 | 158 ms | 
| コンパイル使用メモリ | 82,788 KB | 
| 実行使用メモリ | 76,128 KB | 
| 最終ジャッジ日時 | 2024-09-18 20:26:00 | 
| 合計ジャッジ時間 | 4,656 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 6 | 
| other | AC * 36 | 
ソースコード
import sys
read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
import itertools
N,M = map(int,readline().split())
A = [0] + list(map(int,readline().split()))
m = map(int,read().split())
UV = zip(m,m)
find = False
for (u1,v1),(u2,v2) in itertools.combinations(UV,2):
    if u1 == u2:
        a,b,c = v1,u1,v2
    elif u1 == v2:
        a,b,c = v1,u1,u2
    elif v1 == u2:
        a,b,c = u1,v1,v2
    elif v1 == v2:
        a,b,c = u1,v1,u2
    else:
        continue
    a,b,c = A[a], A[b], A[c]
    if a == c:
        continue
    if a > b < c or a < b > c:
        find = True
        break
answer = 'YES' if find else 'NO'
print(answer)
            
            
            
        