Problem Solving/Baekjoon1337 [백준] 11256 사탕 - Greedy / Java • 문제 링크 11256번: 사탕 당신은 사탕 공장의 주인이다. 날마다, 당신은 J개의 사탕을 가게에 보내기 위해 상자에 포장해야 한다. 당신은 크기가 다른 상자 N개를 가지고 있다. 당신은 편리를 위해 상자를 최소한으로 쓰 www.acmicpc.net • 풀이 과정 상자의 크기 r * c 를 입력받아 정렬 후, 큰 수 부터 확인하여 남은 사탕에 해당 값만큼 뺀다. 남은 사탕의 개수가 0 이하라면 현재까지 사탕을 담은 횟수를 정답으로써 출력한다. • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.. 2023. 4. 11. [백준] 17521 Byte Coin - Greedy / Java • 문제 링크 17521번: Byte Coin 입력은 표준입력을 사용한다. 첫 번째 줄에 요일 수를 나타내는 양의 정수 n과 초기 현금 W(1 ≤ n ≤ 15, 1 ≤ W ≤ 100,000)가 주어진다. 다음 n 개의 줄에서, i번째 줄은 i일의 바이트 코인 가격을 나 www.acmicpc.net • 풀이 과정 첫째날의 가격을 먼저 입력받고, 현재 날이 이전 날의 가격보다 높다면 매수하고 아니라면 매도한다. 출력 시점에 현재 남은 코인의 개수가 있다면 모두 매도해 보유금에 더해 출력한다. • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStre.. 2023. 4. 10. [백준] 5545 최고의 피자 - Greedy / Java • 문제 링크 5545번: 최고의 피자 상근이는 근처 피자 가게에서 매일 저녁으로 피자를 배달해 먹는다. 주머니 사정이 얇아진 상근이는 이번 달부터는 "최고의 피자"를 구매하려고 한다. 최고의 피자란, 피자 가게에서 주문할 수 www.acmicpc.net • 풀이 과정 먼저 토핑을 선택하지 않은 경우의 1원당 열량 값, c / a 를 최대값으로 지정한다. 이 후 각 토핑의 열량 값을 입력받고, 이를 정렬해 큰 값부터 확인한다. 새로 토핑을 추가했을 때마다 1원 당 열량 값을 구하고, 이 값이 현재 최대 값과 같거나 크다면 갱신하고, 작다면 반복문을 탈출해 현재 최대값을 정답으로 출력한다. • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWri.. 2023. 4. 9. [백준] 6550 부분 문자열 - Greedy / Java • 문제 링크 6550번: 부분 문자열 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문자열 s 와 t가 빈칸을 사이에 두고 들어온다. s와 t의 길이는 10만을 넘지 않는다. www.acmicpc.net • 풀이 과정 • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class Main { public static void main(St.. 2023. 4. 8. [백준] 20115 에너지 드링크 - Greedy / Java • 문제 링크 20115번: 에너지 드링크 페인은 에너지 드링크를 좋아하는 회사원이다. 에너지 드링크는 카페인, 아르기닌, 타우린, 나이아신 등의 성분이 들어있어 피로 회복에 도움을 주는 에너지 보충 음료수이다. 야근을 마치고 한 www.acmicpc.net • 풀이 과정 각 용액의 양을 입력받아 모두 합하면서, 이 중 최대값을 구한다. 최대값에 최대값을 제외한 나머지 용액의 합의 반을 더한 값이 합할 수 있는 최대값이며, 이를 나타내는 max += (max - sum) / 2 을 변형하여 (max + sum) / 2 을 정답으로써 출력한다. • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOExce.. 2023. 4. 7. [백준] 3135 라디오 - Greedy / Java • 문제 링크 3135번: 라디오 첫 줄엔 정수 A와 B가 주어진다 (1 ≤ A, B < 1000, A ≠ B). 다음 줄엔 정수 N이 주어진다 (1 ≤ N ≤ 5). 다음 N개의 줄엔 미리 지정되어 있는 주파수가 주어진다 (주파수는 1000 보다 작다). www.acmicpc.net • 풀이 과정 현재 주파수와 목표 주파수의 차 - 1 을 버튼을 누르는 최소 횟수의 기본 값으로 지정한다. 이 후 입력받은 즐겨 찾기 주파수 값과 목표 주파수의 차를 구해 최소 값을 갱신하며, 마지막에 즐겨찾기 버튼을 누른 1회를 추가한 값을 정답으로써 출력한다. • 풀이 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOExc.. 2023. 4. 6. 이전 1 ··· 163 164 165 166 167 168 169 ··· 223 다음