数独を解く(3日目)

以下のプログラムをコンソールアプリケーションとして実行する。
「resource.txt」というファイルが作られる。
出来たファイルをおおもとのプログラムにリソースとして取り込む。

using System.Collections.Generic;

namespace 下準備
{
    class Program
    {
        static void Main(string[] args)
        {
            List<int> gyo = new List<int>();
            List<string> result = new List<string>();


            for (int m0 = 0; m0 < 9; m0++)
            {
                for (int m1 = 0; m1 < 9; m1++)
                {
                    for (int m2 = 0; m2 < 9; m2++)
                    {
                        if (hantei(m0, m1, m2))
                        {
                            gyo.Add(m0 * 100 + m1 * 10 + m2);
                        }
                    }
                }
            }
            int count = gyo.Count;
            for (int m0 = 0; m0 < count; m0++)
            {
                for (int m1 = 0; m1 < count; m1++)
                {
                    for (int m2 = 0; m2 < count; m2++)
                    {
                        if (hantei2(gyo[m0], gyo[m1], gyo[m2]))
                        {
                            result.Add((gyo[m0] * 1000000 + gyo[m1] * 1000 + gyo[m2]).ToString("000000000"));
                        }
                    }
                }
            }
            System.IO.File.WriteAllLines(@"resource.txt", result);
        }

        private static bool hantei(int a, int b, int c)
        {
            if (a / 3 != b / 3 && a / 3 != c / 3 && b / 3 != c / 3)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        private static bool hantei2(int a, int b, int c)
        {
            if (
                (a / 100) % 3 != (b / 100) % 3 &&
                (a / 100) % 3 != (c / 100) % 3 &&
                (b / 100) % 3 != (c / 100) % 3
                )
            {
                if (
                    ((a % 100) / 10) % 3 != ((b % 100 / 10) % 3) &&
                    ((a % 100) / 10) % 3 != ((c % 100 / 10) % 3) &&
                    ((b % 100) / 10) % 3 != ((c % 100 / 10) % 3)
                    )
                {
                    if (
                        (a % 10) % 3 != (b % 10) % 3 &&
                        (a % 10) % 3 != (c % 10) % 3 &&
                        (b % 10) % 3 != (c % 10) % 3
                        )
                    {
                        return true;
                    }
                    else return false;
                }
                else
                {
                    return false;
                }
            }
            else
            {
                return false;
            }
        }
    }
}