2026: 두꺼비, 근성의 신이 되다

메모리제한:128 MB 시간제한:1.000 S
Judge Style:Text Compare 만든사람:
제출:0 통과:0

문제 설명

콩쥐는 오늘도 계모에게 한가지 일을 받았다. 여러개의 숫자가 들어 있는 바구니에서 숫자를 꺼내 오름차순으로 보기 좋게 정렬하라는 일이였다. 콩쥐는 일이

너무 귀찮았기에 두꺼비를 불러 정렬하게 시켜버렸다. 그러나, 멍청했던 두꺼비는 한번에 두 수밖에 비교할 수 없었기에 혼자서 외롭게 두 수를 비교하면 오름차순으로 정렬하였다. 


불쌍한 두꺼비를 위로하기 위해 두꺼비의 정렬 방식을 담은 함수 f(x)를 작성해보자. 
단, 함수형 문제이므로 함수 f()만 작성하시오.

[미리 작성되어있는 프로그램]

# 작성하여 제출해야 하는 함수 부분
# def f(x):

a = list(map(int,input().split()))
print(f(a))

입력 설명

여러 정수가 공백을 두고 입력된다.

출력 설명

리스트 형태로 오름차순으로 값이 정렬되어 출력된다.

입력 예시 Copy

99 0 12 55 88 99 45 22 10

출력 예시 Copy

[0, 10, 12, 22, 45, 55, 88, 99, 99]

도움

버블 정렬은 첫 번째 자료와 두 번째 자료를, 두 번째 자료와 세 번째 자료를, 세 번째와 네 번째를, … 이런 식으로 (마지막-1)번째 자료와 마지막 자료를 비교하여 교환하면서 자료를 정렬하는 알고리즘이다. 

1회전을 수행하고 나면 비교 끝에 가장 큰 자료가 맨 뒤로 이동하므로 2회전에서는 맨 끝에 있는 자료는 정렬에서 제외되고, 2회전을 수행하고 나면 끝에서 두 번째 자료까지는 정렬에서 제외된다. 이렇게 정렬을 1회전 수행할 때마다 정렬에서 제외되는 데이터가 하나씩 늘어난다.

버블정렬은 시간 복잡도가 큰 알고리즘이다. 값이 많아질수록 드는 시간이 기하급수적으로 늘어난다.