brute force(2)
-
[Baekjoon] 2309번: 일곱 난쟁이
https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 문제 설명 아홉 명의 난쟁이들 중 스파이 난쟁이 2명이 숨어있다. 진짜 일곱 난쟁이들의 키의 합은 100이다. 아홉 난쟁이들 중 진짜 일곱 난쟁이들만 찾아내 그 키를 출력한다. 풀이 방법 1. 7중 반복문 제일 단순무식한 방법이다. 반복문을 이렇게 극단적으로 많이 써본 것도 처음이다. import java.io.*; import java.util.Arrays; class Main { final static..
2023.03.18 -
[Baekjoon] 14501번: 퇴사 - Java
https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 문제 설명 상담을 통한 최대 수익을 구하면 된다. 문제 이해는 크게 어렵지 않다. 풀이 방법 재귀를 활용한 완전탐색 방법을 사용할 수 있다. 이 방법은 시간 복잡도가 O(n^2)으로 문제 범위가 최대 15로 작아서 사용 가능하다. 범위가 커질 경우 DP를 활용해야 해결 가능할 것으로 보인다. private static void solution(int day, int pay) { // 퇴사하는 날이 되면 최대 급여를 계산한다. if (day == N) { max = Math.max(max, pay); return; } // 퇴사하는 날..
2023.02.18