Submission #40233550


Source Code Expand

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

namespace Tasks
{
    public class D
    {
        public static void Main()
        {
            using var sw = new StreamWriter(Console.OpenStandardOutput()) { AutoFlush = false };
            Console.SetOut(sw);
            Solve();
            Console.Out.Flush();
        }

        public static void Solve()
        {
            var (N, M) = Scanner.Scan<long, long>();
            const long Inf = (long)1e18;

            if (M <= N)
            {
                Console.WriteLine(M);
                return;
            }

            var answer = Inf;
            for (var a = 1; a <= Math.Min(N, (M + a - 1) / a); a++)
            {
                var x = M / a;
                for (var b = Math.Max(1, x - 1); b <= Math.Min(N, x + 1); b++)
                {
                    var c = a * b;
                    if (c >= M) answer = Math.Min(answer, c);
                }
            }

            if (answer == Inf) answer = -1;
            Console.WriteLine(answer);
        }

        public static class Scanner
        {
            public static T Scan<T>() where T : IConvertible => Convert<T>(Scan()[0]);
            public static (T1, T2) Scan<T1, T2>() where T1 : IConvertible where T2 : IConvertible
            {
                var buffer = Scan();
                return (Convert<T1>(buffer[0]), Convert<T2>(buffer[1]));
            }
            public static (T1, T2, T3) Scan<T1, T2, T3>() where T1 : IConvertible where T2 : IConvertible where T3 : IConvertible
            {
                var buffer = Scan();
                return (Convert<T1>(buffer[0]), Convert<T2>(buffer[1]), Convert<T3>(buffer[2]));
            }
            public static (T1, T2, T3, T4) Scan<T1, T2, T3, T4>() where T1 : IConvertible where T2 : IConvertible where T3 : IConvertible where T4 : IConvertible
            {
                var buffer = Scan();
                return (Convert<T1>(buffer[0]), Convert<T2>(buffer[1]), Convert<T3>(buffer[2]), Convert<T4>(buffer[3]));
            }
            public static (T1, T2, T3, T4, T5) Scan<T1, T2, T3, T4, T5>() where T1 : IConvertible where T2 : IConvertible where T3 : IConvertible where T4 : IConvertible where T5 : IConvertible
            {
                var buffer = Scan();
                return (Convert<T1>(buffer[0]), Convert<T2>(buffer[1]), Convert<T3>(buffer[2]), Convert<T4>(buffer[3]), Convert<T5>(buffer[4]));
            }
            public static (T1, T2, T3, T4, T5, T6) Scan<T1, T2, T3, T4, T5, T6>() where T1 : IConvertible where T2 : IConvertible where T3 : IConvertible where T4 : IConvertible where T5 : IConvertible where T6 : IConvertible
            {
                var buffer = Scan();
                return (Convert<T1>(buffer[0]), Convert<T2>(buffer[1]), Convert<T3>(buffer[2]), Convert<T4>(buffer[3]), Convert<T5>(buffer[4]), Convert<T6>(buffer[5]));
            }
            public static IEnumerable<T> ScanEnumerable<T>() where T : IConvertible => Scan().Select(Convert<T>);
            private static string[] Scan()
            {
                var line = Console.ReadLine()?.Trim() ?? string.Empty;
                return string.IsNullOrEmpty(line) ? Array.Empty<string>() : line.Split(' ');
            }
            private static T Convert<T>(string value) where T : IConvertible => (T)System.Convert.ChangeType(value, typeof(T));
        }
    }
}

Submission Info

Submission Time
Task D - M<=ab
User AconCavy
Language C# (.NET Core 3.1.201)
Score 400
Code Size 3585 Byte
Status AC
Exec Time 105 ms
Memory 27528 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 56
Set Name Test Cases
Sample example_00.txt, example_01.txt, example_02.txt
All crandom_00.txt, crandom_01.txt, crandom_02.txt, crandom_03.txt, crandom_04.txt, crandom_05.txt, crandom_06.txt, crandom_07.txt, crandom_08.txt, crandom_09.txt, example_00.txt, example_01.txt, example_02.txt, hand_00.txt, hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, hand_05.txt, hand_06.txt, impossible_00.txt, impossible_01.txt, impossible_02.txt, impossible_03.txt, impossible_04.txt, just_00.txt, just_01.txt, just_02.txt, just_03.txt, just_04.txt, just_05.txt, just_06.txt, nlarge_00.txt, nlarge_01.txt, nlarge_02.txt, nlarge_03.txt, nlarge_04.txt, nlarge_05.txt, nlarge_06.txt, nlarge_07.txt, nlarge_08.txt, over_00.txt, over_01.txt, over_02.txt, over_03.txt, over_04.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt
Case Name Status Exec Time Memory
crandom_00.txt AC 81 ms 27196 KiB
crandom_01.txt AC 95 ms 27524 KiB
crandom_02.txt AC 81 ms 27388 KiB
crandom_03.txt AC 99 ms 27484 KiB
crandom_04.txt AC 100 ms 27472 KiB
crandom_05.txt AC 102 ms 27352 KiB
crandom_06.txt AC 88 ms 27388 KiB
crandom_07.txt AC 82 ms 27224 KiB
crandom_08.txt AC 79 ms 27368 KiB
crandom_09.txt AC 79 ms 27108 KiB
example_00.txt AC 83 ms 27244 KiB
example_01.txt AC 80 ms 27376 KiB
example_02.txt AC 77 ms 27096 KiB
hand_00.txt AC 96 ms 27480 KiB
hand_01.txt AC 80 ms 27228 KiB
hand_02.txt AC 87 ms 26976 KiB
hand_03.txt AC 103 ms 27072 KiB
hand_04.txt AC 81 ms 27088 KiB
hand_05.txt AC 91 ms 27372 KiB
hand_06.txt AC 96 ms 27224 KiB
impossible_00.txt AC 84 ms 26968 KiB
impossible_01.txt AC 79 ms 27352 KiB
impossible_02.txt AC 87 ms 27372 KiB
impossible_03.txt AC 95 ms 26968 KiB
impossible_04.txt AC 84 ms 27188 KiB
just_00.txt AC 77 ms 27076 KiB
just_01.txt AC 87 ms 27480 KiB
just_02.txt AC 86 ms 26964 KiB
just_03.txt AC 92 ms 27108 KiB
just_04.txt AC 81 ms 27208 KiB
just_05.txt AC 87 ms 27128 KiB
just_06.txt AC 78 ms 27224 KiB
nlarge_00.txt AC 97 ms 27188 KiB
nlarge_01.txt AC 97 ms 27528 KiB
nlarge_02.txt AC 99 ms 27204 KiB
nlarge_03.txt AC 105 ms 27060 KiB
nlarge_04.txt AC 100 ms 26968 KiB
nlarge_05.txt AC 97 ms 27088 KiB
nlarge_06.txt AC 100 ms 27476 KiB
nlarge_07.txt AC 97 ms 27192 KiB
nlarge_08.txt AC 100 ms 27076 KiB
over_00.txt AC 81 ms 27136 KiB
over_01.txt AC 92 ms 26960 KiB
over_02.txt AC 80 ms 27184 KiB
over_03.txt AC 104 ms 27372 KiB
over_04.txt AC 89 ms 27376 KiB
random_00.txt AC 92 ms 27368 KiB
random_01.txt AC 96 ms 27356 KiB
random_02.txt AC 93 ms 27124 KiB
random_03.txt AC 96 ms 27216 KiB
random_04.txt AC 95 ms 27216 KiB
random_05.txt AC 92 ms 27220 KiB
random_06.txt AC 91 ms 26968 KiB
random_07.txt AC 95 ms 27132 KiB
random_08.txt AC 88 ms 27068 KiB
random_09.txt AC 85 ms 27220 KiB