Пример #1
0
        public void QuestionATest(string input, string output)
        {
            var outputs = SplitByNewLine(output);
            IAtCoderQuestion question = new QuestionA();

            var answers = question.Solve(input).Select(o => o.ToString()).ToArray();

            Assert.Equal(outputs, answers);
        }
Пример #2
0
        public void QuestionATest(string input, string output)
        {
            var outputs = SplitByNewLine(output);
            IAtCoderQuestion question = new QuestionA();

            var answers = SplitByNewLine(question.Solve(input).Trim());

            Assert.Equal(outputs, answers);
        }
Пример #3
0
 static void Run(string[] args)
 {
     QuestionA.Main(args);
     //QuestionB.Main(args);
     //QuestionC.Main(args);
     //QuestionD.Main(args);
     //QuestionE.Main(args);
     //QuestionF.Main(args);
 }
Пример #4
0
        static void Main(string[] args)
        {
            IAtCoderQuestion question = new QuestionA();    // 問題に合わせて書き換え
            var answers = question.Solve(Console.In);

            foreach (var answer in answers)
            {
                Console.WriteLine(answer);
            }
        }
Пример #5
0
        static void Main(string[] args)
        {
            IAtCoderQuestion question = new QuestionA();

            using var input  = Console.OpenStandardInput();
            using var output = Console.OpenStandardOutput();

            using var io = new IOManager(input, output);
            question.Solve(io);
        }
Пример #6
0
        static void Main(string[] args)
        {
            IAtCoderQuestion question = new QuestionA();

            using var input  = new FileStream("../../../input/input.txt", FileMode.Open, FileAccess.Read);
            using var output = new FileStream($"../../../output/output{DateTime.Now:yyyyMMdd_HHmmss}.txt", FileMode.Create, FileAccess.Write);

            using var io = new IOManager(input, output);
            question.Solve(io);
        }
Пример #7
0
        public void QuestionATest(string input, string output)
        {
            var outputs = SplitByNewLine(output);
            IAtCoderQuestion question = new QuestionA();

            var answers = question.Solve(input).Select(o => o.ToString()).ToArray();

            foreach (var pair in outputs.Zip(answers, (exp, act) => new { exp, act }))
            {
                NearlyEquals(double.Parse(pair.exp), double.Parse(pair.act));
            }
        }
Пример #8
0
        static void Main(string[] args)
        {
            IAtCoderQuestion question    = new QuestionA();
            IAtCoderQuestion naiveSolver = new NaiveSolver();

            long count = 0;

            while (true)
            {
                using var input          = new MemoryStream();
                using var expectedOutput = new MemoryStream();
                using var actualOutput   = new MemoryStream();
                var expectedIO           = new IOManager(input, expectedOutput);
                var actualIO             = new IOManager(input, actualOutput);
                var inputReader          = new StreamReader(input);
                var inputWriter          = new StreamWriter(input);
                var expectedOutputReader = new StreamReader(expectedOutput);
                var actualOutputReader   = new StreamReader(actualOutput);

                // 入力作成
                GenerateInput(inputWriter);
                inputWriter.Flush();

                // チェック
                input.Position = 0;
                naiveSolver.Solve(expectedIO);
                expectedIO.Flush();
                input.Position = 0;
                question.Solve(actualIO);
                actualIO.Flush();

                input.Position          = 0;
                expectedOutput.Position = 0;
                actualOutput.Position   = 0;

                Console.WriteLine($"[Test {count++}]");
                Console.ForegroundColor = ConsoleColor.DarkGray;
                Console.WriteLine("[Input]");
                Console.ResetColor();
                Console.Write(inputReader.ReadToEnd());

                var expected = expectedOutputReader.ReadToEnd();
                var actual   = actualOutputReader.ReadToEnd();

                Console.ForegroundColor = ConsoleColor.DarkGray;
                Console.WriteLine("[Expected]");
                Console.ResetColor();
                Console.Write(expected);

                Console.ForegroundColor = ConsoleColor.DarkGray;
                Console.WriteLine("[Actual]");
                Console.ResetColor();
                Console.Write(actual);

                if (expected == actual)
                {
                    Console.ForegroundColor = ConsoleColor.DarkGreen;
                    Console.WriteLine("Accepted");
                    Console.ResetColor();
                    Console.WriteLine();
                }
                else
                {
                    Console.ForegroundColor = ConsoleColor.DarkRed;
                    Console.WriteLine("Wrong Answer");
                    Console.ResetColor();
                    Console.WriteLine();
                    break;
                }
            }
        }
Пример #9
0
 private static void Exec(string[] args)
 {
     QuestionA.Main(args);
     //QuestionB.Main(args);
 }
Пример #10
0
 private static void Exec(string[] args)
 {
     QuestionA
     .Exec(args);
 }