예제 #1
0
        private static List <int[, ]> RunLatinSquareFC(LatinSquareFC latinSquare)
        {
            var watch     = System.Diagnostics.Stopwatch.StartNew();
            var solutions = latinSquare.FindSolution();

            watch.Stop();
            Console.WriteLine("  Dla LatinSquareFC {3}\nLiczba rozwiązań: {0} \nCzas znalezienia wszystkich rozwiązań: {1}ms \nCzas znalezienia jednego rozwiązania: {2}ms", solutions.Count, watch.ElapsedMilliseconds, latinSquare.TimeOfOneSolution, latinSquare._size);
            return(solutions);
        }
예제 #2
0
        static void Main(string[] args)
        {
            int n = 2;

            LatinSquareFC latinSquare = new LatinSquareFC(n, ValueMode.Ascending, VariableMode.Ascending);

            RunLatinSquareFC(latinSquare);
            latinSquare = new LatinSquareFC(n + 1, ValueMode.Ascending, VariableMode.Ascending);
            RunLatinSquareFC(latinSquare);
            latinSquare = new LatinSquareFC(n + 2, ValueMode.Ascending, VariableMode.Ascending);
            RunLatinSquareFC(latinSquare);
            latinSquare = new LatinSquareFC(n + 3, ValueMode.Ascending, VariableMode.Ascending);
            RunLatinSquareFC(latinSquare);

            Console.ReadLine();
        }