728x90
시간 제한 : 1초
메모리 제한 : 128MB
입력
첫째 줄에 조각에 써 있는 수가 순서대로 주어진다. 숫자는 1보다 크거나 같고, 5보다 작거나 같으며, 중복되지 않는다. 처음 순서는 1, 2, 3, 4, 5가 아니다.
출력
두 조각의 순서가 바뀔때 마다 조각의 순서를 출력한다.
소스코드
#include <iostream> using namespace std; int main(void) { int arr[5]; for (int i = 0; i < 5; i++) cin >> arr[i]; for (int i = 0; i < 4; i++) { for (int j = 0; j < 4 - i; j++) { if (arr[j] > arr[j + 1]) { int tmp; tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; for (int k = 0; k < 5; k++) cout << arr[k] << ' '; cout << '\n'; } } } }
Tip
버블정렬에서 스왑이 발생할 때 출력을 해주면 된다.
728x90
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준] 1855 - 암호 (0) | 2018.06.04 |
---|---|
백준] 2966 - 찍기(COCI 2008/2009) (0) | 2018.05.29 |
백준] 3023 - 마술사 이민혁(COCI 2006/2007) (0) | 2018.05.27 |
백준] 2877 - 4와 7(COCI 2010/2011) (0) | 2018.05.25 |
백준] 2504 - 괄호의 값(KOI 2008 지역본선) (0) | 2018.05.24 |