結果
問題 | No.558 575検出するやつ |
ユーザー | vain0 |
提出日時 | 2017-08-25 22:29:38 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 28 ms / 2,000 ms |
コード長 | 4,226 bytes |
コンパイル時間 | 1,072 ms |
コンパイル使用メモリ | 119,352 KB |
実行使用メモリ | 26,536 KB |
最終ジャッジ日時 | 2024-10-15 15:59:20 |
合計ジャッジ時間 | 2,184 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 15 |
コンパイルメッセージ
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; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; public sealed partial class Program { public void EntryPoint() { var s = input.ReadLine(); var ok = s.Length >= 3 && Enumerable.Range(0, s.Length - 2).Any(i => s.Substring(i, 3) == "575"); WriteLine(ok ? "YES" : "NO"); } } #region Custom Library public static class TemplateExtension { public static X[] MakeArray<X>(this int count, Func<int, X> func) { var xs = new X[count]; for (var i = 0; i < count; i++) { xs[i] = func(i); } return xs; } public static int[] Range(this int count, int start = 0) { return count.MakeArray(i => i + start); } public static string Intercalate<X>(this IEnumerable<X> @this, string separator) { return string.Join(separator, @this); } public static void ForEach<X>(this IEnumerable<X> @this, Action<X, int> action) { var list = @this as IReadOnlyList<X>; if (list != null) { var count = list.Count; for (var i = 0; i < count; i++) { action(list[i], i); } } else { var i = 0; foreach (var x in @this) { action(x, i); i++; } } } } public sealed class Scanner { readonly TextReader reader; readonly StringBuilder sb = new StringBuilder(); /// <summary> /// Reads next word separated by spaces. /// </summary> public string Word() { sb.Clear(); while (true) { var r = reader.Read(); if (r == '\r') { if (reader.Peek() == '\n') reader.Read(); break; } else if (r == -1 || r == ' ' || r == '\n') { break; } else { sb.Append((char)r); } } return sb.ToString(); } /// <summary> /// Reads next word as <see cref="int"/>. /// </summary> public int N() { return int.Parse(Word()); } /// <summary> /// Reads next word as <see cref="long"/>. /// </summary> public long L() { return long.Parse(Word()); } /// <summary> /// Reads next word as <see cref="double"/>. /// </summary> public double F() { return double.Parse(Word()); } public int[] Ns(int count) { return count.MakeArray(_ => N()); } public long[] Ls(int count) { return count.MakeArray(_ => L()); } public double[] Fs(int count) { return count.MakeArray(_ => F()); } /// <summary> /// Reads next line and splits it by spaces. /// </summary> public X[] Words<X>(Func<string, X> func) { return reader.ReadLine().Split(' ').Select(func).ToArray(); } public Scanner(TextReader reader) { this.reader = reader; } } public partial class Program { readonly TextReader input; readonly TextWriter output; readonly Scanner scanner; void WriteLine(int value) { output.WriteLine(value); } void WriteLine(long value) { output.WriteLine(value); } void WriteLine(double value) { output.WriteLine(value); } void WriteLine(char value) { output.WriteLine(value); } void WriteLine(string value) { output.WriteLine(value); } public Program(TextReader input, TextWriter output) { this.input = input; this.output = output; scanner = new Scanner(input); } public static void Main(string[] args) { #if DEBUG using (var writer = new VainZero.IO.DebugTextWriter(Console.Out)) #else var writer = Console.Out; #endif { new Program(Console.In, writer).EntryPoint(); } } } #endregion