도전
프로그램 또는 두 개의 입력 정수 소요 함수 작성 i
하고 j
, 자신의 최대 공약수를 출력하는 단계; 유클리드 알고리즘 을 사용하여 계산 합니다 (아래 참조).
입력
입력은 공백으로 구분 된 문자열 표현 i
및 j
/ 또는 두 개의 개별 정수 로 취할 수 있습니다 . 정수가 10,000보다 작거나 같다고 가정 할 수 있습니다. 입력 정수가 서로 소수가 아니라고 가정 할 수도 있습니다.
유클리드 고장
사이의 더 큰 수 i
와는 j
가능한 횟수만큼 작은으로 분할된다. 그런 다음 나머지가 추가됩니다. 이 프로세스는 나머지가 이전이 될 때까지 나머지와 이전 숫자로 반복됩니다 0
.
예를 들어, 입력이 1599 650
다음 과 같은 경우
1599 = (650 * 2) + 299
650 = (299 * 2) + 52
299 = (52 * 5) + 39
52 = (39 * 1) + 13
39 = (13 * 3) + 0
마지막 숫자 13
는 두 입력 정수의 최대 공약수입니다. 다음과 같이 시각화 할 수 있습니다.
산출
출력은 위의 형식으로 분류 한 다음 줄 바꿈과 GCD가 있어야합니다. 모든 매체를 통해 출력 할 수 있습니다.
예
입력
18 27
50 20
447 501
9894 2628
출력
27 = (18 * 1) + 9
18 = (9 * 2) + 0
9
50 = (20 * 2) + 10
20 = (10 * 2) + 0
10
501 = (447 * 1) + 54
447 = (54 * 8) + 15
54 = (15 * 3) + 9
15 = (9 * 1) + 6
9 = (6 * 1) + 3
6 = (3 * 2) + 0
3
9894 = (2628 * 3) + 2010
2628 = (2010 * 1) + 618
2010 = (618 * 3) + 156
618 = (156 * 3) + 150
156 = (150 * 1) + 6
150 = (6 * 25) + 0
6
참고 : 출력이 위와 같이 간격을 둘 필요는 없습니다. 간격은 명확성을위한 것입니다. 괄호가 필요합니다.
보너스
출력이 위와 같이 떨어져 있으면 점수에 -10 %의 보너스를 추가 할 수 있습니다.