본문 바로가기
코딩 테스트 문제 풀이

Do it 알고리즘 코딩 테스트 - 15번

by 김복칠 2023. 11. 3.

문제.

https://www.acmicpc.net/problem/2750

 

 

2750번: 수 정렬하기

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net


코드.

n = int(input())
a = []

for i in range(n):
    b = int(input())
    a.append(b)

a.sort()

for i in a:
    print(i)
입력 값 출력 값
5

5

2

3

4

1
1

2

3

4

5

해석 및 풀이.

★ 이 문제는 N개 수를 먼저 입력하고 수만큼의 숫자를 무작위로 입력한 뒤 이를 오름차순으로 출력하는 프로그램을 만드는 문제입니다.

n = int(input())
sum = []

먼저 N개의 수를 입력받은 후 무작위로 입력받을 수를 넣을 빈 리스트를 만들어 줍니다. 리스트에 넣어 두면 이후에 출력할때 한번에 출력이 가능하기 때문입니다.

for i in range(n):
    m = int(input())
    sum.append(m)

그리고 N개의 숫자를 입력받을 반복문을 만들어 주는데 이때 반복문의 횟수를 N번 만큼만 돌려줍니다. 한번씩 입력받을 수 있도록 숫자를 바로 빈 리스트 sum에 넣어줍니다. 이때 리스트에 데이터 추가 함수인 append를 사용해 줍니다.

sum.sort()

for i in sum:
    print(i)

리스트에 입력받은 값을 잘 넣어준 뒤 무작위로 입력받은 값을 sort() 함수를 통해 오름차순 해줍니다. 이후 마지막 과정으로 sum에 들어간 데이터를 반복문을 통하여 하나씩 꺼내 출력해줍니다.