프로그래밍 알고리즘

[정올 2498] 공약수

꾸준한사람 2023. 1. 8. 21:32
반응형

http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=1759&sca=99&sfl=wr_hit&stx=2498 

 

JUNGOL

 

www.jungol.co.kr

#include <stdio.h>

/* 최대공약수 G, 최대공배수 L
GL = AB / Gx = A / Gy = B / L = xyG
*/

int G, L, A, B;

void Input()
{
	scanf("%d %d", &G, &L);
}

int gcd(int a, int b)
{
	return b ? gcd(b, a % b) : a;
}

int main(void)
{
	Input();
	int xy = L / G;
	int x = 0, y = 0;
	
	for (int i = 1; i * i <= xy; i++)
	{
		if (xy % i == 0)
		{
			x = i;
			y = xy / i;
			if (gcd(x, y) == 1)
			{
				A = x * G; B = y * G;
			}
		}
	}
	printf("%d %d\n", A, B);
		   	 
	return 0;
}
반응형

'프로그래밍 알고리즘' 카테고리의 다른 글

[정올 2501] 모양 정돈  (0) 2023.01.08
[정올 2499] 저울  (0) 2023.01.08
[정올 2497] 수열  (0) 2023.01.08
[정올 2468] 비밀번호  (0) 2023.01.08
[정올 2467] 비용  (1) 2023.01.08