トップページに戻る    次の競技プログラミングのテンプレートへ

001 競技プログラミングのテンプレート C#

競技プログラミングのC#のテンプレートです。


C#のソース

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static string InputPattern = "Input1";

    static List<string> GetInputList()
    {
        var WillReturn = new List<string>();

        if (InputPattern == "Input1") {
            WillReturn.Add("");
        }
        else if (InputPattern == "Input2") {
            WillReturn.Add("");
        }
        else if (InputPattern == "Input3") {
            WillReturn.Add("");
        }
        else {
            string wkStr;
            while ((wkStr = Console.ReadLine()) != null) WillReturn.Add(wkStr);
        }
        return WillReturn;
    }

    static void Main()
    {
        List<string> InputList = GetInputList();
        //int[] wkArr = InputList[0].Split(' ').Select(pX => int.Parse(pX)).ToArray();

        //int[] wkArr = { };
        //Action<string> SplitAct = pStr =>
        //    wkArr = pStr.Split(' ').Select(pX => int.Parse(pX)).ToArray();
    }
}


解説

List<string>ではなく、IEnumerable<string>を使用するようにして、
Yield Returnを使っていいです。

AOJやyukicoderのWAの原因調査で、テキストファイルから入力を受け入れる場合は、
System.IO.File.ReadAllLines(@"テキストファイルのフルパス").ToList();
という記述が使えます。