알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving)77 [다익스트라]백준 20182 골목 대장 호석 - 효율성 1 package 다익스트라; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.PriorityQueue; public class boj_20182_골목대장호석효율성1 { private static int n, m, a, b, c, maxCost, cost[]; private static List[] v; static class Node implements Comparable{ int node; int cost; int shy; Node .. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 12. 2. [DP]백준 9095 1, 2, 3 더하기 & 15988 1, 2, 3 더하기 3 package DP; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class boj_15988_123더하기3 { private static int testcaseNumber, dp[], testcaseArr[]; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); testcaseNumber = Integer.parseInt(br.readLine()); test.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 12. 1. [DP]백준 14501 퇴사, 15486 퇴사 2 package DP; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Scanner; public class boj_14501_퇴사 { // 1. 뒤에서 부터 For문을 돌기 // 2. 해당 배열 순서 + 경과 기간 >= N 이면 넘기기 // 3. 합의 최댓값 으로 갱신 해두기 static class Consult { int time; int profit; Consult(int time, int profit) { this.time = time; this.profit = profit; } } public static void main(Str.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 12. 1. 백준 24060 알고리즘 수업 - 병합 정렬 1 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int count, answer, N, K , A[], tmp[]; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer stz = new StringTokenizer(br.readLine()); N = Integer.pa.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 11. 28. 백준 25501 재귀의 귀재(재귀) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class boj_25501_재귀의귀재 { static int count; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int T = Integer.parseInt(br.readLine()); int answer[][] = new int[T][2]; for(int i.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 11. 26. 백준 25305 java - 커트라인(정렬) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Collections; public class boj_25305_커트라인 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n, k; // 커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다. String temp[] = br.readLine(.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 11. 25. 백준 2587 java - 대표값2(수학, 구현, 사칙연산) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class boj_2587_대표값2 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int midValue, averageValue = 0, inputCount = 5, input[] = new int[inputCount]; for (int i = 0; i < inputCount; i++) {.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 11. 24. 백준 2566 java - 최댓값(구현) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class boj_2566_최댓값 { static int input[][] = new int[10][10]; // 입력 받을 배열 - 패딩 static int maxValue = -1; // 출력할 최댓값 static int[] maxValueLoc = new int[2]; // 출력할 최댓값의 배열 행, 열 public static void main(String[] args) throws IOException { // 1. 9 x 9 배열 // 2. 0 이상 100 이하의 정수 // 3. 최댓값 찾기 // 4. 몇 행 몇 열인.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 11. 22. 백준 1916 java - 최소비용 구하기(다익스트라 알고리즘) 전형적인 다익스트라 문제이다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.sql.Array; import java.util.*; public class Boj_1916_최소비용구하기 { public static void main(String[] args) throws IOException { PriorityQueue pq = new PriorityQueue(new Comparator() { @Override public int compare(int[] o1, int[] o2) { return o1[1] - o2[1]; } }); BufferedReader br .. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 7. 15. 백준 1238 java - 파티(다익스트라) 해당 문제는 다익스트라 N번 또는 2번으로 풀 수 있는 문제이다. 1. N번 돌리는 경우에는 A -> X로 가는 경우 N-1번, X->A가는 경우 1번 해서 N번 돌리면 된다 2. 2번 돌리는 경우에는 X -> A로 가는 경우 1번과 간선을 반대 방향으로 저장한 간선리스트로 1번 다익스트라를 돌리면 된다. 3. 2번 다익스트라를 돌리는 경우가 가능한 이유는 X에서 다른 노드에 가는 경우는 이해가 되겠지만 간선리스트를 반대방향으로 저장한 경우 특정 노드에서 X로 가는 길이가 바로 A -> X로 가는 경우 N-1번과 동치이기 때문이다. package 다익스트라; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStr.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 7. 3. 백준 14938 java - 서강 그라운드(플루이드와샬, 다익스트라) 해당 문제는 35분여간 bfs로 풀다가 밑에 문제 분류 보고 플루이드와샬, 다익스트라인 걸 보고 바로 플루이드와샬로 돌려서 풀었다. 그 과정에서 문제를 입력값을 제대로 안봐서 m, r를 혼동하는 바람에 이왜틀 3분간 시전... 1. A에서 B까지 가는 거리가 m(수색가능 범위) 이내면 아이템 회수 가능 2. BFS돌리면서 계속 합해줘서 MAX값 찾아야 겠다. 3. 이왜틀???? 아! bfs로 방문처리하면 더 최단거리가 될 수 있음에도 불구하고 방문처리돼서 최단거리로 가는 게 아닐 수 있겠구나 4. 다익스트라 구현보다 플루이드와샬이 구현할 때 더 빠르니까 플와 써야겠다. 5. 문제 접근, 풀이, 제출, pass까지 약 50분 소요 import java.io.BufferedReader; import java.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 7. 2. 백준 1865 java - 웜홀(벨만 포드 알고리즘) 해당 문제는 벨만포드 알고리즘을 사용하는 문제이다. 본인은 벨만 포드 알고리즘을 알고 있지 않아서 약 2시간 30분만의 사투 끝에 구글링을 통해 공부하여서 맞췄다... 맞췄다기 보다 맞춤당했다. 핵심은 음수 사이클 판별하는 알고리즘으로 벨만포드를 사용할 수 있다는 점이다. 풀이법은 따로 남기지 않고 동빈나님 강의를 링크로 달아두겠다! https://www.youtube.com/watch?v=Ppimbaxm8d8 package 그래프_DFS; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStre.. 알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving) 2022. 6. 30. 이전 1 2 3 4 5 ··· 7 다음 728x90