728x90 알고리즘/백준28 [Java] 11062 - 카드 게임 https://www.acmicpc.net/problem/11062 11062번: 카드 게임 근우와 명우는 재미있는 카드 게임을 하고 있다. N개의 카드가 일렬로 놓여 있다. 각 카드에는 점수가 적혀있다. 근우부터 시작하여 번갈아가면서 턴이 진행되는데 한 턴에는 가장 왼쪽에 있는 www.acmicpc.net 간만에 알고리즘에 대한 포스팅을 합니다. 이분 탐색을 하는것 처럼 left와 right의 범위를 줄여나가며 근우를 기준으로 최선의 선택을 하는 과정을 DP에 저장합니다. 가장 중요한 부분은 아무래도 이 부분이 아닐까 싶습니다. 1 2 3 4 5 6 7 8 if(flag){ // 근우 차례일 때 명우 카드에 뭘 더해야 최대값인지를 정해야 됨. return DP[left][right] = Math.max.. 2022. 8. 30. [Java] 2580 스도쿠 - DFS, BackTracking https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루 www.acmicpc.net /** * 한줄에 1~9까지 1개씩 들어가야 한다. (얘를 먼저 채우기) * * -> 1~9까지 무지성으로 채우고 check하기? * 그다음 3x3칸에 다 들어갔는지 확인한다. * */ public class bj2580 { static boolean finish; static int[][] map = new int[9][9]; static ArrayList infos; static StringB.. 2022. 4. 1. [Java] 2812 크게 만들기 https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net [틀린 코드] - 정렬해서 K개만큼 빼주면 될 줄 알았던 나 자신을 반성 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import jav.. 2022. 3. 29. [Java] 2573 - 빙산 - BFS, 시뮬레이션 https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 7.. 2022. 3. 10. [Java] 1238 파티 - 다익스트라 https://www.acmicpc.net/problem/1238 1238번: 파티 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두 번째 줄부터 M+1번째 줄까지 i번째 도로의 시작점, 끝점, 그리고 이 도로를 지나는데 필요한 소요시간 Ti가 들어 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72.. 2022. 3. 10. [Java] 2606 바이러스 - BFS https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 import java.io.BufferedReader; import java.io.IOExce.. 2022. 3. 10. 이전 1 2 3 4 5 다음 728x90