우선 스프링부트로 구현한 웹서버 프로그램을 도커 컨테이너화를 시키기 위해서 Jar파일을 생성해야함. 기술 스택 Gradle Project Editor : InteliJ Ultimate SpringBoot : 3.2.0 JDK : 17 1. 인텔리제이 우측 상단 코끼리 모양 Gradle 클릭 후 Tasks 클릭 2. Bulid 클릭 3. Clean 더블클릭 -> Clean의 경우 기존에 생성된 Jar와 관련된 Build 디렉토리 삭제하는 동작을 수행. 4. bootJar 더블클릭으로 Jar파일 생성 정말 간단하게 딸깍 몇번으로 Jar파일 생성 가능! 생성된 Jar파일은 아래와 같은 디렉토리에서 확인 가능함.
문제 https://www.acmicpc.net/problem/30894 30894번: 유령의 집 탈출하기 첫째 줄에 유령의 집의 크기 $N, M$이 주어집니다.$(2≤N,M≤200)$ 둘째 줄에 유령의 집의 입구 좌표 $S_x, S_y$, 출구 좌표 $E_x, E_y$가 주어집니다.$(1≤S_x, E_x≤N, 1≤S_y, E_y≤M)$ 좌표 $(x, y)$는 위에서부터 www.acmicpc.net 풀이 3차원 방문체크를 활용한 BFS 풀이 접근법 3차원 방문배열을 활용 각 유령들은 시간에 따라 바라보는 방향이 바뀌는데 총 4가지의 서로 다른 맵이 존재함. 이 점을 활용하여 3차원 방문배열을 통해 각 방문배열마다 유령이 바라볼 수 있는 공간들에 대해 미리 전처리한 후 BFS 탐색을 수행. 소스코드 imp..
문제 https://www.acmicpc.net/problem/1535 1535번: 안녕 첫째 줄에 사람의 수 N(≤ 20)이 들어온다. 둘째 줄에는 각각의 사람에게 인사를 할 때, 잃는 체력이 1번 사람부터 순서대로 들어오고, 셋째 줄에는 각각의 사람에게 인사를 할 때, 얻는 기쁨이 1번 www.acmicpc.net 풀이 부분집합으로 풀이가 가능한 문제 DP Knapsack으로 접근해봤던 문제임 접근법 Knapsack으로 풀어보자고 권유를 받아 DP 상향식으로 접근 세준이의 최대체력은 100으로 각 체력을 행으로 주어지는 사람을 열로 2차원 dp배열을 초기화 각 j번째 사람에 대해 hp[j]가 현재 체력 i보다 낮을 경우 이전 부분문제의 해와 비교하여 최대값을 갱신 누적값이 필요하기 때문에 체력 i보다..
문제 https://www.acmicpc.net/problem/21940 21940번: 가운데에서 만나기 위 조건을 만족하는 도시 $X$의 번호를 출력한다. 만약 가능한 도시 $X$가 여러 개인 경우는 도시의 번호를 오름차순으로 출력한다. www.acmicpc.net 풀이 모든 정점으로부터 다른 모든 정점까지의 거리를 구하는 문제로써 플로이드 워셜 풀이가 가능 하지만 나는 데이크스트라로 풀이함 최초 접근 주어지는 K개의 노드를 출발점으로 하여금 데이크스트라를 수행하면서 전역 dp배열에 최대 비용을 기록 후 갈 수 있는 노드들에 대해 탐색하여 왕복시간을 구하려함. 하지만 이렇게 풀이하게 될 경우 왕복시간을 구할수가 없기 때문에 잘못된 풀이. 접근법 주어지는 K로부터 모든 노드에 대해 왕복시간을 구하고 모두..