結果
問題 | No.629 グラフの中に眠る門松列 |
ユーザー |
![]() |
提出日時 | 2018-01-09 19:35:08 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 36 ms / 4,000 ms |
コード長 | 2,506 bytes |
コンパイル時間 | 779 ms |
コンパイル使用メモリ | 112,696 KB |
実行使用メモリ | 21,504 KB |
最終ジャッジ日時 | 2024-12-23 14:27:15 |
合計ジャッジ時間 | 3,113 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 36 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Contest { class Scanner { private string[] line = new string[0]; private int index = 0; public string Next() { if (line.Length <= index) { line = Console.ReadLine().Split(' '); index = 0; } var res = line[index]; index++; return res; } public int NextInt() { return int.Parse(Next()); } public long NextLong() { return long.Parse(Next()); } public string[] Array() { line = Console.ReadLine().Split(' '); index = line.Length; return line; } public int[] IntArray() { return Array().Select(int.Parse).ToArray(); } public long[] LongArray() { return Array().Select(long.Parse).ToArray(); } } class Program { private int N, M; private int[] A; private List<int>[] R; public void Solve() { var sc = new Scanner(); N = sc.NextInt(); M = sc.NextInt(); A = sc.IntArray(); R = new List<int>[N]; for (int i = 0; i < N; i++) { R[i] = new List<int>(); } for (int i = 0; i < M; i++) { var u = sc.NextInt() - 1; var v = sc.NextInt() - 1; R[u].Add(v); R[v].Add(u); } for (int i = 0; i < N; i++) { var less = new HashSet<int>(); var great = new HashSet<int>(); foreach (int j in R[i]) { if (A[j] < A[i]) { less.Add(A[j]); } if (A[j] > A[i]) { great.Add(A[j]); } } if ((less.Count >= 2) || (great.Count >= 2)) { Console.WriteLine("YES"); return; } } Console.WriteLine("NO"); } static void Main(string[] args) { new Program().Solve(); } } }