Submission #434451


Source Code Expand

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

class Myon
{

    public Myon() { }
    public static int Main()
    {
        new Myon().calc();
        return 0;
    }

    Scanner cin;

    int[,] b = new int[3, 3];
    int[,] c = new int[3, 3];
    int[,] used = new int[3, 3];
    int N = 3;

    int dfs(int d)
    {
        if (d == 9)
        {
            //全部埋まった時
            int ans = 0;
            for (int i = 0; i < N - 1; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    if (used[i, j] == used[i + 1, j])
                    {
                        ans += b[i, j];
                    }
                }
            }

            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N - 1; j++)
                {
                    if (used[i, j] == used[i, j + 1])
                    {
                        ans += c[i, j];
                    }
                }
            }
            return ans;
        }
        //直大くんのターン
        else if (d % 2 == 0)
        {
            int ans = 0;
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    if (used[i, j] != 0) continue;
                    
                    used[i, j] = 1;
                    int temp = dfs(d + 1);
                    ans = Math.Max(temp, ans);
                    used[i, j] = 0;
                }
            }
            return ans;
        }
        //直子さんのターン
        else
        {
            int ans = 9999999;
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    if (used[i, j] != 0) continue;

                    used[i, j] = 2;
                    int temp = dfs(d + 1);
                    ans = Math.Min(temp, ans);
                    used[i, j] = 0;
                }
            }
            return ans;
        }
    }


    void calc()
    {
        cin = new Scanner();
        int sum = 0;
        for (int i = 0; i < N - 1; i++)
        {
            for (int j = 0; j < N; j++)
            {
                b[i, j] = cin.nextInt();
                sum += b[i, j];
            }
        }

        for (int i = 0; i < N; i++)
        {
            for (int j = 0; j < N - 1; j++)
            {
                c[i, j] = cin.nextInt();
                sum += c[i, j];
            }
        }
        int ans = dfs(0);
        int ans2 = sum - ans;
        Console.WriteLine(ans);
        Console.WriteLine(ans2);
    }

}





class Scanner
{
    string[] s;
    int i;

    char[] cs = new char[] { ' ' };

    public Scanner()
    {
        s = new string[0];
        i = 0;
    }

    public string next()
    {
        if (i < s.Length) return s[i++];
        string st = Console.ReadLine();
        while (st == "") st = Console.ReadLine();
        s = st.Split(cs, StringSplitOptions.RemoveEmptyEntries);
        i = 0;
        return next();
    }

    public int nextInt()
    {
        return int.Parse(next());
    }

    public long nextLong()
    {
        return long.Parse(next());
    }

    public double nextDouble()
    {
        return double.Parse(next());
    }

}

Submission Info

Submission Time
Task C - 双子と○×ゲーム
User chokudai
Language C# (Mono 3.2.1.0)
Score 100
Code Size 3530 Byte
Status AC
Exec Time 252 ms
Memory 8928 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 22
Set Name Test Cases
Sample sample-01.txt, sample-02.txt
All 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, sample-01.txt, sample-02.txt
Case Name Status Exec Time Memory
sample-01.txt AC 248 ms 8864 KB
sample-02.txt AC 252 ms 8864 KB
test-01.txt AC 241 ms 8908 KB
test-02.txt AC 244 ms 8876 KB
test-03.txt AC 249 ms 8860 KB
test-04.txt AC 248 ms 8852 KB
test-05.txt AC 249 ms 8864 KB
test-06.txt AC 242 ms 8808 KB
test-07.txt AC 241 ms 8868 KB
test-08.txt AC 239 ms 8812 KB
test-09.txt AC 238 ms 8816 KB
test-10.txt AC 239 ms 8836 KB
test-11.txt AC 239 ms 8856 KB
test-12.txt AC 243 ms 8792 KB
test-13.txt AC 242 ms 8868 KB
test-14.txt AC 241 ms 8856 KB
test-15.txt AC 241 ms 8864 KB
test-16.txt AC 246 ms 8928 KB
test-17.txt AC 242 ms 8856 KB
test-18.txt AC 239 ms 8824 KB
test-19.txt AC 239 ms 8868 KB
test-20.txt AC 239 ms 8860 KB