トップページに戻る    次の競技プログラミングの問題へ    前の競技プログラミングの問題へ

ARC-016-A クイズゲーム

■■■問題■■■

高橋君はクイズゲームを作っています。
ヒント機能として、「不正解の選択肢を1つ消す」という機能を作りたいです。

あなたには選択肢の数Nと、その問題の正解である番号Mが与えられます。
消してもよい選択肢の番号を1つ出力してください
(消す選択肢は、正解である番号でなければ何でも構いません)。

■■■入力■■■

N M

●選択肢を示す整数 N(2 <= N <= 5) と、正解の番号を示す整数である M(1 <= M <= N) が与えられる。
●選択肢の範囲は1からNまでである。

■■■出力■■■

消してもよい選択肢の番号を出力せよ。
また、出力の末尾には改行を入れること。


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("4 4");
            //1
            //●正解である番号は4なので、'1','2','3'を選択肢から外すことができます
            //●'1'を出力していますが、'2'も'3'も正解です
        }
        else if (InputPattern == "Input2") {
            WillReturn.Add("2 1");
            //1
            //●正解である番号は1なので、'2'を選択肢から外すことができます
        }
        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(X => int.Parse(X)).ToArray();

        int N = wkArr[0];
        int M = wkArr[1];

        for (int I = 1; I <= N; I++) {
            if (I != M) {
                Console.WriteLine(I);
                break;
            }
        }
    }
}


解説

For文で順に判定してます。