結果

問題 No.478 一般門松列列
ユーザー claw88
提出日時 2017-01-27 22:38:06
言語 C#
(csc 3.4.0-beta4-19569-03)
結果
AC  
実行時間 36 ms
コード長 2,183 Byte
コンパイル時間 1,968 ms
使用メモリ 19,784 KB
最終ジャッジ日時 2020-01-14 03:45:57

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
1fuji1.txt AC 28 ms
18,640 KB
1fuji2.txt AC 28 ms
18,804 KB
1fuji3.txt AC 28 ms
18,796 KB
2taka1.txt AC 28 ms
18,456 KB
2taka2.txt AC 32 ms
18,816 KB
2taka3.txt AC 28 ms
18,836 KB
2taka4.txt AC 28 ms
18,656 KB
2taka5.txt AC 28 ms
18,924 KB
2taka6.txt AC 28 ms
18,800 KB
2taka7.txt AC 28 ms
18,528 KB
2taka8.txt AC 28 ms
18,644 KB
2taka10.txt AC 32 ms
19,172 KB
2taka11.txt AC 36 ms
19,784 KB
2taka12.txt AC 32 ms
19,068 KB
3nasubi1.txt AC 32 ms
19,072 KB
3nasubi2.txt AC 32 ms
19,072 KB
3nasubi3.txt AC 28 ms
18,792 KB
3nasubi4.txt AC 32 ms
18,988 KB
3nasubi5.txt AC 28 ms
18,944 KB
3nasubi6.txt AC 32 ms
19,044 KB
3nasubi7.txt AC 32 ms
18,976 KB
3nasubi8.txt AC 36 ms
18,984 KB
3nasubi9.txt AC 28 ms
19,060 KB
3nasubi10.txt AC 32 ms
18,768 KB
3nasubi11.txt AC 32 ms
19,000 KB
3nasubi12.txt AC 32 ms
18,888 KB
3nasubi13.txt AC 28 ms
18,792 KB
3nasubi14.txt AC 28 ms
18,588 KB
3nasubi15.txt AC 28 ms
18,760 KB
3nasubi16.txt AC 28 ms
18,680 KB
3nasubi17.txt AC 28 ms
18,944 KB
3nasubi18.txt AC 28 ms
18,992 KB
3nasubi19.txt AC 28 ms
18,988 KB
3nasubi20.txt AC 28 ms
18,656 KB
テストケース一括ダウンロード
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.4.0-beta4-19569-03 (82f2e254)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #
using System;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Globalization;
using System.Diagnostics;
using static System.Console;
using Pair = System.Collections.Generic.KeyValuePair<int, int>;

class Program
{
    static void Main()
    {
        SetOut(new StreamWriter(OpenStandardOutput()) { AutoFlush = false });
        new Program().Solve();
        Out.Flush();
    }
    Scanner cin = new Scanner();
    readonly int[] dd = { 0, 1, 0, -1, 0 };
    readonly int mod = 1000000007;
    readonly string alfa = "abcdefghijklmnopqrstuvwxyz";


    void Solve()
    {
        int N = cin.Nextint;
        int K = cin.Nextint;
        int a = 0;
        int low = 0;

        if (N - K - 2 == 0)
        {
            WriteLine(string.Join(" ", Enumerable.Range(0, N).ToArray()));
            return;
        }

        var A = new int[N];
        A[0] = 1; A[1] = 3; A[2] = 2;
        a = 1;
        low = 3;

        int[] kado = { 1, 3, 2, 4 };
        while (a < N - K - 2)
        {
            A[low] = kado[low % 4];
            low++;
            a++;
        }
        for (int i = low; i < N; i++)
        {
            A[i] = A[low - 1];
        }
        WriteLine(string.Join(" ", A));
    }

}

class Scanner
{
    string[] s; int i;
    char[] cs = new char[] { ' ' };
    public Scanner() { s = new string[0]; i = 0; }
    public string[] Scan { get { return ReadLine().Split(); } }
    public int[] Scanint { get { return Array.ConvertAll(Scan, int.Parse); } }
    public long[] Scanlong { get { return Array.ConvertAll(Scan, long.Parse); } }
    public double[] Scandouble { get { return Array.ConvertAll(Scan, double.Parse); } }
    public string Next
    {
        get
        {
            if (i < s.Length) return s[i++];
            string st = ReadLine();
            while (st == "") st = ReadLine();
            s = st.Split(cs, StringSplitOptions.RemoveEmptyEntries);
            i = 0;
            return Next;
        }
    }
    public int Nextint { get { return int.Parse(Next); } }
    public long Nextlong { get { return long.Parse(Next); } }
    public double Nextdouble { get { return double.Parse(Next); } }
}
0