AtCoder Beginner Contest 002

Submission #111874

Source codeソースコード

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text.RegularExpressions;

class T
{
    public static void Main()
    {
        var NM = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
        var dict = new Dictionary<int, Node>();
        for (int i = 1; i <= NM[0]; i++)
        {
            dict.Add(i, new Node(i));
        }

        for (var i = 0; i < NM[1]; i++)
        {
            var xy = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
            dict[xy[0]].AddWayTo(dict[xy[1]]);
            dict[xy[1]].AddWayTo(dict[xy[0]]);
        }

        int max = 1;

        for (int i = 1; i <= NM[0]; i++)
        {
            if (dict.ContainsKey(i))
            {
                var al = new Dictionary<int, bool>();
                for (int k = 1; k <= NM[0]; k++)
                {
                    al.Add(k, false);
                }
                int count = SearchNode(i, i, dict, al, 12, 0);
                if (count > max) max = count;
            }
        }
        Console.WriteLine("{0}", max+1);
    }

    public static int SearchNode(int now, int to, Dictionary<int, Node> dict, Dictionary<int, bool> avail, int rest, int count)
    {
        if(rest == 0) return count;

        avail.Remove(now);
        avail.Add(now, true);

        int nowc = count;

        bool isDow = false;

        foreach (var v in dict[now].NextNodeList)
        {
            if (v.Number == to) isDow = true; continue;

            if (!avail[v.Number])
            {
                int res = SearchNode(v.Number, to, dict, avail, rest - 1, count + 1);

                if (res > count) nowc = res;
            }
        }

        count = nowc;

        avail.Remove(now);
        avail.Add(now, false);

        if (isDow)
            return count;
        else
            return 1;
    }

    private static string mul(string a, int n)
    {
        var r = "";
        for (int i = 0; i < n; i++)
        {
            r += a;
        }
        return a;
    }

    public class Node
    {
        public Node(int number)
        {
            Number = number;
            nexts = new List<Node>();
        }

        public void AddWayTo(Node next)
        {
            nexts.Add(next);
        }

        public int Number
        {
            private set;
            get;
        }

        public List<Node> NextNodeList
        {
            get { return nexts; }
        }

        private List<Node> nexts;
    }
}

Submission

Task問題 D - 派閥
User nameユーザ名 ぬくれあ
Created time投稿日時
Language言語 C# (Mono 2.10.8.1)
Status状態 WA
Score得点 0
Source lengthソースコード長 2616 Byte
File nameファイル名
Exec time実行時間 ms
Memory usageメモリ使用量 -

Test case

Set

Set name Score得点 / Max score Cases
all 0 / 100 00_sample_01.txt,00_sample_02.txt,00_sample_03.txt,00_sample_04.txt,test_01.txt,test_02.txt,test_03.txt,test_04.txt,test_05.txt,test_06.txt,test_07.txt,test_08.txt,test_09.txt,test_10.txt,test_11.txt,test_12.txt,test_13.txt,test_14.txt,test_15.txt,test_16.txt,test_17.txt,test_18.txt,test_19.txt,test_20.txt,test_21.txt,test_22.txt,test_23.txt,test_24.txt,test_25.txt,test_26.txt,test_27.txt,test_28.txt,test_29.txt,test_30.txt,test_31.txt,test_32.txt,test_33.txt,test_34.txt,test_35.txt,test_36.txt,test_37.txt,test_38.txt,test_39.txt,test_40.txt,test_41.txt,test_42.txt,test_43.txt,test_44.txt,test_45.txt,test_46.txt,test_47.txt,test_48.txt,test_49.txt,test_50.txt,test_51.txt,test_52.txt,test_53.txt,test_54.txt,test_55.txt,test_56.txt,test_57.txt,test_58.txt,test_59.txt,test_60.txt,test_61.txt,test_62.txt,test_63.txt,test_64.txt,test_65.txt,test_66.txt,test_67.txt,test_68.txt,test_69.txt,test_70.txt

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
00_sample_01.txt WA
00_sample_02.txt AC 175 ms 9140 KB
00_sample_03.txt WA
00_sample_04.txt WA
test_01.txt WA
test_02.txt AC 177 ms 9056 KB
test_03.txt AC 172 ms 9172 KB
test_04.txt WA
test_05.txt AC 173 ms 9172 KB
test_06.txt AC 182 ms 9176 KB
test_07.txt AC 182 ms 9164 KB
test_08.txt WA
test_09.txt WA
test_10.txt WA
test_11.txt WA
test_12.txt WA
test_13.txt WA
test_14.txt AC 171 ms 9176 KB
test_15.txt WA
test_16.txt WA
test_17.txt WA
test_18.txt WA
test_19.txt WA
test_20.txt WA
test_21.txt WA
test_22.txt WA
test_23.txt WA
test_24.txt WA
test_25.txt WA
test_26.txt WA
test_27.txt WA
test_28.txt WA
test_29.txt WA
test_30.txt WA
test_31.txt WA
test_32.txt WA
test_33.txt WA
test_34.txt WA
test_35.txt WA
test_36.txt WA
test_37.txt AC 182 ms 9152 KB
test_38.txt WA
test_39.txt WA
test_40.txt WA
test_41.txt WA
test_42.txt WA
test_43.txt WA
test_44.txt WA
test_45.txt WA
test_46.txt WA
test_47.txt WA
test_48.txt WA
test_49.txt WA
test_50.txt WA
test_51.txt WA
test_52.txt WA
test_53.txt WA
test_54.txt WA
test_55.txt WA
test_56.txt WA
test_57.txt WA
test_58.txt WA
test_59.txt WA
test_60.txt WA
test_61.txt WA
test_62.txt WA
test_63.txt WA
test_64.txt WA
test_65.txt WA
test_66.txt WA
test_67.txt WA
test_68.txt WA
test_69.txt WA
test_70.txt WA