Do it! 알고리즘 코딩테스트 with JAVA - (16) 그리디 알고리즘
그리디
- 현재 상태에서 보는 선택지 중 최선의 선택지가 전체 선택지 중 최선의 선택지라고 가정하는 알고리즘
핵심 이론
- 해 선택 : 현재 상태에서 가장 최선이라고 생각되는 해를 선택한다.
- 적절성 검사 : 현재 선택한 해가 전체 문제의 제약 조건에 벗어나지 않는지 검사한다.
- 해 검사 : 현재까지 선택한 해 집합이 전체 문제를 해결할 수 있는지 검사한다. 전체 문제를 해결하지 못한다면 1로 돌아가 같은 과정을 반복한다.
문제 풀이
https://yurison.tistory.com/572
[백준/자바] 11047 - 동전 0
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputS
yurison.tistory.com
https://yurison.tistory.com/573
[백준/자바] 1715 - 카드 정렬하기
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.PriorityQueue; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStr
yurison.tistory.com
https://yurison.tistory.com/574
[백준/자바] 1744 - 수 묶기
import java.util.Collections; import java.util.PriorityQueue; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); PriorityQueue plusPq = new PriorityQueue(Collect
yurison.tistory.com
https://yurison.tistory.com/575
[백준/자바] 1931 - 회의실 배정
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.StringTokenizer; public class Main { public static void main(Stri
yurison.tistory.com
https://yurison.tistory.com/576
[백준/자바] 1541 - 잃어버린 괄호
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next(); String[] arr = str.split("-"); int result = 0; for (int i = 0; i < arr.length; i++) { if (i == 0) { result +
yurison.tistory.com