본문 바로가기
  • 개발공부 및 일상적인 내용을 작성하는 블로그 입니다.

코딩 테스트/그리디68

백준 21557 - 불꽃놀이 (자바 - 그리디) https://www.acmicpc.net/problem/21557 21557번: 불꽃놀이 첫 줄에는 폭죽 더미의 개수 $N$이 주어집니다. 다음 줄에는 각 폭죽 더미의 높이 $A_1, A_2, \cdots, A_N$이 주어어집니다. www.acmicpc.net * 문제 요약 불꽃놀이는 N 개의 폭죽더미를 이용할 예정입니다. 당신은 아래 작업을 정확히 N - 2 번 반복해서 폭죽을 터뜨리려고 합니다. - 양 끝 폭죽더미를 제외한 폭죽더미를 하나 고릅니다. - 해당 폭죽더미의 폭죽을 모두 터뜨립니다. - 폭발한 폭죽더미는 사라지고, 양 옆으로 가장 가까운 폭죽더미의 높이가 1씩 감소합니다. 불꽃놀이가 끝나고 나면 두 개의 폭죽더미만이 남습니다. 한 번 불꽃놀이에 사용한 폭죽더미는 재사용이 불가능하기 때문에.. 2023. 5. 11.
백준 16435 - 스네이크버드(자바 - 그리디) https://www.acmicpc.net/problem/16435 16435번: 스네이크버드 첫 번째 줄에 과일의 개수 N (1 ≤ N ≤ 1,000) 과 스네이크버드의 초기 길이 정수 L (1 ≤ L ≤ 10,000) 이 주어집니다. 두 번째 줄에는 정수 h1, h2, ..., hN (1 ≤ hi ≤ 10,000) 이 주어집니다. www.acmicpc.net * 문제 요약 스네이크버드는 뱀과 새의 모습을 닮은 귀여운 생물체입니다. 스네이크버드의 주요 먹이는 과일이며, 과일 하나를 먹으면 길이가 1 만큼 늘어납니다. 과일들은 지상으로부터 일정 높이를 두고 떨어져 있으며 i (1 2023. 5. 11.
백준 15720 - 카우버거 (자바 - 그리디) https://www.acmicpc.net/problem/15720 15720번: 카우버거 첫째 줄에는 주문한 버거의 개수 B, 사이드 메뉴의 개수 C, 음료의 개수 D가 공백을 사이에 두고 순서대로 주어진다. (1 ≤ B, C, D ≤ 1,000) 둘째 줄에는 각 버거의 가격이 공백을 사이에 두고 주어진 www.acmicpc.net * 문제 요약 카우버거에 세트 할인을 도입하고자 한다. 세트 메뉴는 버거 1개, 사이드 메뉴 1개, 음료 1개를 선택할 경우 각각의 제품에 대해서 10% 의 세트 할인을 적용하는 방식으로 진행된다. 가게의 POS 기에 세트 할인 프로그램을 직접 만든다고 할 때 해당 프로그램을 작성해보자. * 입력 첫째 줄에는 주문한 버거의 갯수 B, 사이드 메뉴의 갯수 C, 음료의 갯수 D.. 2023. 5. 11.
백준 14916 - 거스름돈 (자바 - 그리디) https://www.acmicpc.net/problem/14916 14916번: 거스름돈 첫째 줄에 거스름돈 액수 n(1 ≤ n ≤ 100,000)이 주어진다. www.acmicpc.net * 문제 요약 편의점 카운터에서 일하는데 손님이 2원짜리와 5원짜리 동전으로만 거스름돈을 달라고 한다. 여기서 2원짜리 동전과 5원짜리 동전은 무한정으로 많이 가지고 있다고 가정한다. 거스름돈을 줄 때 동전의 갯수가 최소가 되도록 거슬러 주어야 한다. 거스름돈이 n 인 경우, 최소 동전의 갯수가 몇 개인지 알려주는 프로그램을 작성하시오. 예를 들어 거스름돈이 15원이면 5원짜리 3개를, 거스름돈이 14원이면 5원짜리 2개와 2원짜리 2개로 총 4개를, 거스름돈이 13원이면 5원짜리 1개와 2원짜리 4개로 총 5개를 .. 2023. 5. 10.