페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#4090

우유 섞기 2s 512MB

문제

농장은 경쟁적인 사업이다 -- 특히 우유 생산에서는 더욱 그렇다.

농부 존은 만약 그가 자신의 우유 생산 방식을 혁신하지 않는다면,
그의 낙농 사업이 완전히 망가질 수도 있다고 생각한다!

다행히도, 농부 존에게는 좋은 아이디어가 있다.

그의 세 마리의 최고 젖소 베시, 엘시, 그리고 밀드레드는 각각 약간 다른 맛의 우유를 생산하며,
그는 이 셋을 섞어 완벽한 맛의 조합을 만들 계획이다.

세 가지 다른 우유를 섞기 위해, 그는 세 마리의 소로부터 나온 우유를 담은 세 개의 양동이를 가져온다.

양동이들은 서로 다른 크기일 수 있으며 완전히 차 있지 않을 수도 있다.

그는 그 다음 양동이 1을 양동이 2에 붓고, 그 다음 양동이 2를 양동이 3에 붓고,
그 다음 양동이 3을 양동이 1에 붓고, 그 다음 양동이 1을 양동이 2에 붓고,
이런 식으로 순환하며 총 100번의 붓기 작업을 수행한다(따라서 100번째 붓기는 양동이 1에서 양동이 2로 붓는 것이 된다).

농부 존이 양동이 a에서 양동이 b로 붓는 경우,
그는 양동이 a가 빌 때까지 혹은 양동이 b가 찰 때까지 가능한 한 많은 우유를 붓는다.

농부 존이 100번의 붓기 작업을 모두 끝낸 후 각 양동이에 얼마나 많은 우유가 들어 있을지 알려주시오.


입력

입력 파일의 첫 번째 줄에는 두 개의 공백으로 구분된 정수가 들어 있으며,
이는 첫 번째 양동이의 용량 c1과 첫 번째 양동이에 들어 있는 우유의 양 m1을 나타낸다.

c1과 m1은 모두 양수이며 최대 10억까지 가능하고, c1 ≥ m1 이다.

두 번째 줄과 세 번째 줄도 비슷하게, 각각 두 번째와 세 번째 양동이의 용량과 우유 양을 포함한다.


출력

100번의 붓기 작업 이후 각 양동이에 최종적으로 들어 있는 우유의 양을 세 줄에 걸쳐 출력하시오.


예제

10 3
11 4
12 5
0
10
2

이 예시에서, 붓기 과정 동안 각 양동이의 우유 양은 다음과 같다:

초기 상태: 3 4 5

  1. 붓기 1->2: 0 7 5

  2. 붓기 2->3: 0 0 12

  3. 붓기 3->1: 10 0 2

  4. 붓기 1->2: 0 10 2

  5. 붓기 2->3: 0 0 12
    (마지막 세 상태는 이후 순환적으로 반복된다 ...)



출처

USACO 2018 December Bronze

로그인해야 코드를 작성할 수 있어요.