Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Programmers
- Q objects
- Python
- Bruteforce
- stateful
- Unit Testing
- ws
- stateless
- HTTP 완벽 가이드
- stack&que
- dictionary
- greedy
- combinations
- SQL
- Git
- AWS
- postreSQL
- permutations
- TDD
- codecov
- pytest
- Query
- ORM
- utils
- Django
- 백준
- Gunicorn
- algorithm
- was
- Stack
Archives
- Today
- Total
해피 코딩!
[백준] 10989번 수 정렬하기 3 본문
이번 문제는 계수정렬을 사용하여 해결하는 알고리즘 문제이다.
계수정렬 (Counting sort)
- 수의 범위가 제한적일 때 사용하는 알고리즘.
- 배열의 인덱스를 특정한 데이터의 값으로 여기는 정렬 방법.
- 배열의 크기는 데이터의 범위를 포함할 수 있도록 설정.
- 데이터가 등장한 횟수를 센다.
lst = [0] * 10_001
import sys
for _ in range(int(sys.stdin.readline())):
n = int(sys.stdin.readline())
lst[n] +=1
for index, value in enumerate(lst):
if value == 0:
continue
while value > 0:
print(index)
value-=1
입력의 양이 많다면 sys.stdin.readline() 을 잊지 않아야 한다.
'알고리즘' 카테고리의 다른 글
[백준] 11399 ATM (0) | 2020.12.31 |
---|---|
[백준] 12865번 평범한 배낭 (0) | 2020.12.30 |
[백준] 10814 나이순 정렬 (0) | 2020.12.28 |
[백준] 2231 분해합 (0) | 2020.12.27 |
[프로그래머스] level 2 구명보트 (0) | 2020.12.24 |
Comments