結果

問題 No.442 和と積
ユーザー kashi3215kashi3215
提出日時 2018-06-06 17:23:55
言語 C++11
(gcc 11.4.0)
結果
TLE  
実行時間 -
コード長 327 bytes
コンパイル時間 215 ms
コンパイル使用メモリ 22,912 KB
実行使用メモリ 14,904 KB
最終ジャッジ日時 2024-06-30 10:16:40
合計ジャッジ時間 4,768 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 TLE -
testcase_01 -- -
testcase_02 -- -
testcase_03 -- -
testcase_04 -- -
testcase_05 -- -
testcase_06 -- -
testcase_07 -- -
testcase_08 -- -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
testcase_14 -- -
testcase_15 -- -
testcase_16 -- -
testcase_17 -- -
testcase_18 -- -
testcase_19 -- -
testcase_20 -- -
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:4:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    4 |         scanf("%lld %lld", &A, &B);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~
main.cpp:9:11: warning: ‘X’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    9 |         Y = A * B%X;
      |         ~~^~~~~~~~~

ソースコード

diff #

#include<cstdio>
int main(void) {
	long long int A, B, X, Y;
	scanf("%lld %lld", &A, &B);

	if (A == 1 || B == 1) { printf("1"); }
	else
	X = A + B;
	Y = A * B%X;
	while (X%Y != 0 && Y % X != 0) {
		if (X > Y) { X = X % Y; }
		else { Y = Y % X; }
	}

	if (X > Y) {printf("%lld",Y );}
	else { printf("%lld", X); }

	return 0;

}
0