結果
問題 |
No.406 鴨等間隔の法則
|
ユーザー |
![]() |
提出日時 | 2018-02-27 11:12:35 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 324 ms / 2,000 ms |
コード長 | 1,576 bytes |
コンパイル時間 | 1,065 ms |
コンパイル使用メモリ | 109,696 KB |
実行使用メモリ | 40,960 KB |
最終ジャッジ日時 | 2024-07-07 12:21:50 |
合計ジャッジ時間 | 7,133 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.IO; using System.Linq; using System.Collections.Generic; class Program { static void Solve() { var n = sc.Int(); var x = sc.Int(n).OrderBy(xn => xn); var tmp = x.Zip(x.Skip(1), (fst, sec) => sec - fst).OrderBy(xn => xn).Distinct(); if (tmp.Count() != 1 || tmp.First() == 0) pr.WriteLine("NO"); else pr.WriteLine("YES"); } static void Main(string[] args) { // pr.AutoFlush = true; Solve(); pr.Flush(); } static Scanner sc = new Scanner(); static Printer pr = new Printer(); } #region IO class Scanner { private int _i = 0; private string[] line = new string[0]; private T[] Enumerate<T>(int n, Func<T> f) { T[] ret = new T[n]; for (int i = 0; i < n; i++) ret[i] = f(); return ret; } public string Str() { if (line.Length <= _i) { line = Console.ReadLine().Split(' '); _i = 0; } return line[_i++]; } public int Int() => int.Parse(Str()); public long Long() => long.Parse(Str()); public double Double() => double.Parse(Str()); public int[] Int(int n) => Enumerate(n, Int); public long[] Long(int n) => Enumerate(n, Long); public double[] Double(int n) => Enumerate(n, Double); public string[] Str(int n) => Enumerate(n, Str); } class Printer : StreamWriter { public Printer() : base(Console.OpenStandardOutput()) { AutoFlush = false; } } #endregion