수 정렬하기 성공분류
시간 제한 |
메모리 제한 |
제출 |
정답 |
맞은 사람 |
정답 비율 |
1 초 |
128 MB |
66609 |
37538 |
26230 |
58.158% |
https://www.acmicpc.net/problem/2750
문제
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
출력
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
알고리즘 분류
백준 알고리즘 # 2750번 : 수 정렬하기
https://docs.python.org/ko/3/howto/sorting.html
n = int(input())
ls = []
for _ in range(n):
ls.append(int(input()))
s = sorted(ls)
for i in s:
print(i)
풀이
다시 코딩테스트를 준비해야하는 기간이 왔습니다😂
근래에 알고리즘 공부를 소홀히 했더니 기초적인 문제들부터 다시 풀어야겠더군요...ㅎㅎ 풀이해보죠!
정렬하는 방법은 쉽게 2가지 정도가 있습니다.
key point 1: sorted 함수 사용하기
위에 풀이한 코드와 같이 for문으로 n만큼 반복을 해준 뒤, ls로 설정해둔 리스트 []에 n 이후로 주어지는 정수를 append(추가)해줬어요.
다음으로 s라는 변수를 설정해서 sorted함수로 ls 리스트의 수를 sorted 함수는 기본적으로 오름차순으로 정렬된다는 것을 활용해서 정렬했어요.
key point 2: sort 함수 사용하기
다음으로 sort 함수는 따로 s라는 변수를 설정하지 않고, ls.sort()하게 되면 역시 오름차순으로 정렬이 되는데요.
여기서 ls.sort(reverse=True)로 코드를 짤 경우에는 내림차순으로 정렬되요.
2가지 방법으로 정렬을 한 뒤 for문으로 리스트 ls에 정렬된 정수들을 순서대로 출력해주면 끄-읏!
자세한 코드가 궁금하신 분들은 아래 GitHub 코드를 참고해주세요🙏
최종 소스코드
'코딩테스트 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 | 1874 : 스택 수열 (Python / 파이썬) (0) | 2020.11.23 |
---|---|
백준 알고리즘 | 1978 : 소수 찾기 (Python / 파이썬) (0) | 2020.11.03 |
백준 알고리즘 | 1912 : 연속합 (Python / 파이썬) (0) | 2020.10.12 |
백준 알고리즘 | 1929 : 소수 구하기 (Python / 파이썬) (0) | 2020.10.12 |
백준 알고리즘 | 10828 : 스택 (Python / 파이썬) (0) | 2020.10.12 |
댓글