[백준] 5585번 : 거스름돈 – JAVA [자바]
https://www.acmicpc.net/problem/5585 5585번: 거스름돈 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사 www.acmicpc.net 문제 문제 풀이 백준 5585번 거스름돈은 브론즈 2 난이도의 그리디 문제이다. 이 문제에서는 가격 N이 주어진다. 그리고 항상 1000엔짜리 지폐로 계산하고 거스름돈은 500엔, 100엔, 50엔, 10엔, 5엔, 1엔으로 받을 수 있다. 이때 최소의 개수로 거스름돈을 받는다고 할 때 받는 거스름돈의 매수를 출력하면 된다. 우선 최소의 개수로 거스름돈을 받는다고 하면 우선 ..
2022. 8. 1.
[알고리즘] 계수 정렬 (Counting Sort)
목차 계수 정렬이란? 계수 정렬은 데이터 값을 직접 비교하지 않고, 단순하게 각 숫자가 몇 개 있는지 개수를 세어 저장한 후에 정렬하는 알고리즘이다. 기존의 정렬 알고리즘들은 위치를 바꾸며 정렬을 했는데, 계수 정렬에서는 크기를 기준으로 개수만 세면 되기 때문에 위치를 변경할 필요가 없다. 계수 정렬의 큰 특징은 값 비교가 일어나지 않기 때문에 속도가 빠르다는 것이다. 하지만, 개수를 저장하는 배열을 사용해야 하기 때문에 추가 공간이 필요하다. 그래서, 정렬해야 할 수의 범위가 작을 때에만 유리하다. 이 이유는 예를 보면서 설명하겠다. EX) 0, 100, 2, 10, 10000 오름차순으로 정렬하기 예를 들어서 정렬해야 할 수가 0, 100, 2, 10, 10000이면 고작 5개의 수를 정렬하는데 0부..
2022. 7. 29.