Problem1527--유클리드 알고리즘

1527: 유클리드 알고리즘

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 19  Solved: 7
[Submit] [Status] [Web Board] [Creator:]

Description

두 개의 양의 정수가 주어진다. 
하나는 기준이 되고, 다른 하나는 그것을 반복적으로 쪼개는 역할을 한다. 
과정은 다음과 같은 규칙을 따른다. 
1. 두 수 사이의 비례 관계를 확인하라. 
2. 이때 나타나는 수학적인 관계를 출력하라.
3. 그 관계에 따라 두 수의 역할을 서로 바꿔가며 과정을 반복하되, 
   어떤 수가 더 이상 쪼개지지 않을 때까지 계속하라.
(참고로 이건 공대생이라면 알아야 할 알고리즘이다..)

Input

두 개의 양의 정수 n,m이 공백을 사이에 두고 주어진다. 
(1 <= m < n <= 1,000)

Output

각 단계마다 A = B * 몫 + 나머지 형식으로 출력한다.
나머지가 0이 되는 순간에는 + 나머지를 생략한다.
마지막엔 한 줄 띄우고, (초기 n, 초기 m) = 마지막 몫을 출력한다.

Sample Input Copy

34 20

Sample Output Copy

34 = 1 * 20 + 14
20 = 1 * 14 + 6
14 = 2 * 6 + 2
6 = 3 * 2

(34,20) = 2

Source/Category