結果
問題 | No.629 グラフの中に眠る門松列 |
ユーザー | keymoon |
提出日時 | 2018-01-05 21:53:36 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 42 ms / 4,000 ms |
コード長 | 1,660 bytes |
コンパイル時間 | 1,153 ms |
コンパイル使用メモリ | 106,624 KB |
実行使用メモリ | 20,480 KB |
最終ジャッジ日時 | 2024-12-23 06:34:02 |
合計ジャッジ時間 | 3,612 ms |
ジャッジサーバーID (参考情報) |
judge2 / 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.Linq; using System.Collections.Generic; class P { static void Main() { int[] NM = Console.ReadLine().Split().Select(int.Parse).ToArray(); int[] vertex = Console.ReadLine().Split().Select(int.Parse).ToArray(); int[][] path = new int[NM[1]][].Select(_ => Console.ReadLine().Split().Select(x => int.Parse(x) - 1).ToArray()).ToArray(); int[] vertbig = new int[vertex.Length]; int[] vertsmall = new int[vertex.Length]; foreach (var i in path) { if(vertex[i[0]] < vertex[i[1]]) { if (vertbig[i[1]] != 0 && vertbig[i[1]] != vertex[i[0]]) { Console.WriteLine("YES"); return; } if (vertsmall[i[0]] != 0 && vertsmall[i[0]] != vertex[i[1]]) { Console.WriteLine("YES"); return; } vertbig[i[1]] = vertex[i[0]]; vertsmall[i[0]] = vertex[i[1]]; } else if (vertex[i[0]] > vertex[i[1]]) { if (vertbig[i[0]] != 0 && vertbig[i[0]] != vertex[i[1]]) { Console.WriteLine("YES"); return; } if (vertsmall[i[1]] != 0 && vertsmall[i[1]] != vertex[i[0]]) { Console.WriteLine("YES"); return; } vertbig[i[0]] = vertex[i[1]]; vertsmall[i[1]] = vertex[i[0]]; } } Console.WriteLine("NO"); } }