//알고리즘 1. 그래프 탐색 -> 주어진 자료로 리스트를 만들어 탐색하여 모든 노드를 거쳐가는 최소값을 구함. 방법 1. 더보기 import java.util.ArrayList; import java.util.Scanner; public class 상근이의여행_9372 { static int T, N, M, cnt, ans; static boolean v[]; static ArrayList[] list; public static void main(String[] args) { Scanner sc = new Scanner(System.in); T = sc.nextInt(); for (int tc = 1; tc
//알고리즘 1. 그래프 탐색 -> 가중치가 없는 무방향 그래프이므로 인접리스트를 만들어 탐색 -> 방문체크를 하며 dfs 탐색 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class 최장경로 { static int T, N, M, max = 1; public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedRea..
//알고리즘 1. dp -> n x k 의 dp 테이블 생성 -> k값 1~k까지 n으로 만들 수 있는 경우의 수를 저장 -> dp[i][j]에 저장되는 값 : num[i]값을 제외하고 만들 수 있는경우(dp[i-1][j]) + num[i] 값으로 만들 수 있는 경우(sum) dp 문제를 많이 안 풀어봐서 코드는 간단하지만 시간은 오래걸림... 더보기 import java.util.Scanner; public class 동전1_2293 { static int n, k, num[], dp[][]; public static void main(String[] args) { Scanner sc = new Scanner(System.in); n = sc.nextInt(); k = sc.nextInt(); num ..