사과 나누기

시간 제한1초메모리 제한128 MB

요약
R과 G가 주어질 때 두 수의 공통 약수 N을 모두 찾아 N과 R/N, G/N을 출력하는 문제입니다.
난이도

쉬움10점 중 3점

유형
정수론, 수학, 완전 탐색
정답자
아직 제출이 없습니다

문제

어떤 코치는 빨간 사과를 R개, 초록 사과를 G개 가지고 있다. 훈련장에 있는 선수들 중 몇 명에게 이 사과를 모두 나누어 주려고 한다.

모든 선수는 서로 같은 수의 빨간 사과와 같은 수의 초록 사과를 받아야 한다. 또한 코치는 사과가 남는 것을 원하지 않으므로, 두 색의 사과를 하나도 남기지 않고 모두 나누어 주어야 한다.

사과를 받을 선수의 수와, 각 선수가 받는 빨간 사과와 초록 사과의 수로 가능한 모든 나누어 주는 방법을 구하시오. 훈련장에는 선수가 충분히 많다고 가정한다.

입력

첫째 줄에 빨간 사과의 수 R과 초록 사과의 수 G가 공백으로 구분되어 주어진다.

  • 1 <= R, G <= 1,000,000,000

출력

가능한 각 방법마다 한 줄에 세 정수 N, X, Y를 출력한다.

  • N은 사과를 받는 선수의 수이다.
  • X는 각 선수가 받는 빨간 사과의 수이다.
  • Y는 각 선수가 받는 초록 사과의 수이다.

각 방법은 정확히 한 번씩만 출력해야 한다. 방법들은 어떤 순서로 출력해도 된다.

예제3

  1. 예제 1

    입력
    4 8
    
    예상 출력
    1 4 8
    2 2 4
    4 1 2
    
  2. 예제 2

    입력
    15 12
    
    예상 출력
    3 5 4
    1 15 12
    
  3. 예제 3

    입력
    42 105
    
    예상 출력
    1 42 105
    3 14 35
    7 6 15
    21 2 5