提出 #40255571


ソースコード 拡げる

#include <stdio.h>

long long bsearch (long long M) {
	long long left = 0, right = 10000000;

	for (; right - left > 5; ) {
		long long center = (left + right) / 2;
		if (center * center > M) {
			right = center;
		} else {
			left = center;
		}
	}

	for (;;left++) {
		if (left * left >= M) {
			break;
		}
	}

	return left;
}

int main (void) {

	long long N, M;
	scanf("%lld%lld", &N, &M);

	if (N >= M) {
		printf("%lld\n", M);
		return 0;
	}

	if (N < 1000000) {
		if (N * N < M) {
			printf("-1\n");
			return 0;
		}
	}

	long long tmp = bsearch(M);
	long long sup = tmp * tmp;

	for (;; M++) {

		//printf("M = %lld, sup = %lld\n", M, sup);

		if (M >= sup + 1) {
			printf("-1\n");
			return 0;
		}

		tmp = bsearch(M);

		for (int i = tmp; i >= 1; i--) {
			if (M % i == 0) {
				if (M / i <= N && i <= N) {
					printf("%lld\n", M);
					return 0;
				} else {
					break;
				}
			}
		}
	}

	return 0;
}

/*
int test (void) {

	long long N, M;
	scanf("%lld%lld", &N, &M);

	if (N >= M) {
		printf("%lld\n", N);
		return 0;
	}

	if (N < 1000000) {
		if (N * N < M) {
			printf("-1\n");
			return 0;
		}
	}

	long long tmp = bsearch(M);
	long long sup = tmp * tmp;

	for (;; M++) {

		//printf("M = %lld, sup = %lld\n", M, sup);

		if (M >= sup + 1) {
			printf("-1\n");
			return 0;
		}
		tmp = bsearch(M);

		for (int i = tmp; i >= 1; i--) {
			if (M % i == 0) {
				if (M / i <= N && i <= N) {
					printf("%lld\n", M);
					return 0;
				}
			}
		}
	}

	return 0;
}

int main (void) {
	int q;
	scanf("%d", &q);

	for (int i = 0; i < q; i++) {
		test();
	}

	return 0;
}
*/

提出情報

提出日時
問題 D - M<=ab
ユーザ InTheBloom
言語 C (Clang 10.0.0)
得点 0
コード長 1710 Byte
結果 TLE
実行時間 2205 ms
メモリ 2148 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 400
結果
AC × 3
AC × 46
TLE × 10
セット名 テストケース
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
ケース名 結果 実行時間 メモリ
crandom_00.txt AC 5 ms 2112 KiB
crandom_01.txt AC 12 ms 2040 KiB
crandom_02.txt AC 2 ms 2008 KiB
crandom_03.txt AC 1 ms 2048 KiB
crandom_04.txt AC 11 ms 2040 KiB
crandom_05.txt AC 2 ms 2032 KiB
crandom_06.txt AC 17 ms 2096 KiB
crandom_07.txt AC 1 ms 1992 KiB
crandom_08.txt AC 1 ms 1896 KiB
crandom_09.txt AC 1 ms 1996 KiB
example_00.txt AC 1 ms 2104 KiB
example_01.txt AC 1 ms 1888 KiB
example_02.txt AC 1 ms 2040 KiB
hand_00.txt AC 1 ms 2040 KiB
hand_01.txt AC 1 ms 2044 KiB
hand_02.txt TLE 2205 ms 1780 KiB
hand_03.txt AC 6 ms 1988 KiB
hand_04.txt AC 1 ms 2036 KiB
hand_05.txt AC 1 ms 2036 KiB
hand_06.txt AC 1 ms 2028 KiB
impossible_00.txt AC 2 ms 2032 KiB
impossible_01.txt AC 1 ms 1980 KiB
impossible_02.txt AC 2 ms 2048 KiB
impossible_03.txt AC 1 ms 2028 KiB
impossible_04.txt AC 1 ms 2060 KiB
just_00.txt AC 1 ms 2004 KiB
just_01.txt AC 1 ms 2020 KiB
just_02.txt AC 2 ms 2100 KiB
just_03.txt AC 1 ms 2044 KiB
just_04.txt AC 1 ms 2112 KiB
just_05.txt AC 1 ms 2028 KiB
just_06.txt AC 2 ms 2044 KiB
nlarge_00.txt AC 17 ms 2024 KiB
nlarge_01.txt AC 1 ms 2048 KiB
nlarge_02.txt AC 9 ms 2048 KiB
nlarge_03.txt AC 15 ms 2100 KiB
nlarge_04.txt AC 17 ms 2064 KiB
nlarge_05.txt AC 12 ms 2016 KiB
nlarge_06.txt AC 3 ms 2092 KiB
nlarge_07.txt AC 35 ms 2044 KiB
nlarge_08.txt AC 15 ms 2104 KiB
over_00.txt TLE 2205 ms 1784 KiB
over_01.txt TLE 2205 ms 1836 KiB
over_02.txt AC 880 ms 2120 KiB
over_03.txt TLE 2205 ms 1688 KiB
over_04.txt TLE 2205 ms 1700 KiB
random_00.txt AC 6 ms 2036 KiB
random_01.txt AC 2 ms 2092 KiB
random_02.txt TLE 2205 ms 1788 KiB
random_03.txt TLE 2205 ms 1800 KiB
random_04.txt TLE 2205 ms 1840 KiB
random_05.txt TLE 2205 ms 1856 KiB
random_06.txt TLE 2205 ms 1764 KiB
random_07.txt AC 1691 ms 2064 KiB
random_08.txt AC 19 ms 2048 KiB
random_09.txt AC 8 ms 2148 KiB