프로그램 명: coci_mjehuric
제한시간: 1 초
Goran은 각각 1부터 5까지의 숫자가 적힌 나뭇조각들을 가지고 있다. Goran은 그 나뭇조각들을 1,2,3,4,5 순으로 정렬하고 싶을때, 다음과 같은 과정을 거친다.
(1) 첫번째 나뭇조각의 숫자가 두번째 나뭇조각의 숫자보다 크면, 그 나뭇조각들의 위치를 바꾼다.
(2) 두번째 나뭇조각의 숫자가 세번째 나뭇조각의 숫자보다 크면, 그 나뭇조각들의 위치를 바꾼다.
(3) 세번째 나뭇조각의 숫자가 네번째 나뭇조각의 숫자보다 크면, 그 나뭇조각들의 위치를 바꾼다.
(4) 네번째 나뭇조각의 숫자가 다섯번째 나뭇조각의 숫자보다 크면, 그 나뭇조각들의 위치를 바꾼다.
(5) 아직도 나뭇조각들에 적힌 숫자가 1,2,3,4,5 순으로 정렬되지 않았으면, (1)으로 돌아가서 다시 한다.
현재 나뭇조각에 적힌 숫자들이 놓인 순서대로 주어질 때, 각각의 교환 이후의 순서를 출력한다.
입력
첫번째 줄에 나뭇조각에 적힌 숫자들이 놓인 순서대로 주어진다. 각 나뭇조각에는 1부터 5까지의 숫자가 한 번씩 나타난다.
출력
위 정렬 과정에서 교체가 이루어진 직후의 나뭇조각 상태를 공백으로 구분하여 출력하고 줄을 띄운다.
Goran has five wooden pieces arranged in a sequence. There is a number between 1 and 5 inscribed on
every piece, so that every number appears on exactly one of the five pieces.
Goran wants to order the pieces to form the sequence 1, 2, 3, 4, 5 and does it like this:
- If the number on the first piece is greater than the number on the second piece, swap them.
- If the number on the second piece is greater than the number on the third piece, swap them.
- If the number on the third piece is greater than the number on the fourth piece, swap them.
- If the number on the fourth piece is greater than the number on the fifth piece, swap them.
- If the pieces don't form the sequence 1, 2, 3, 4, 5, go to step 1.
Write a program that, given the initial ordering of the pieces, outputs the ordering after each swap.
입력
The first line contains five integers separated by single spaces, the ordering of the pieces.
The numbers will be between 1 and 5 (inclusive) and there will be no duplicates.
The initial ordering will not be 1, 2, 3, 4, 5.
출력
After any two pieces are swapped, output the ordering of the pieces, on a single line separated by
spaces.
입출력 예
input
2 1 5 3 4
output
1 2 5 3 4
1 2 3 5 4
1 2 3 4 5
input
2 3 4 5 1
output
2 3 4 1 5
2 3 1 4 5
2 1 3 4 5
1 2 3 4 5
출처: coci 2008/2009 contest4 1/6
번역: gon5534
[질/답]
[제출 현황]
[푼 후(1)]