Algorithm 137

유니온 파인드 / 백준 1717 집합의 표현

문제 접근유니온 파인드 문제 주어진 a,b 값을 index로 갖는 배열의 대표 값이 같으면 yes 다르면 nofind 함수를 통해 배열의 값을 index로 갖는 더 root의 배열 값을 가져와 비교>> 재귀 함수로 반복해서 제일 대표 값을 찾아와서 비교풀이package gold;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class G1717 { static int[] N; public static void main(String[] args) throws IOException{ BufferedRea..

Algorithm 2025.08.29

그래프 / 백준 18352 특정 거리의 도시 찾기

문제 접근처음에 dfs로 풀려했더니1 > 31 > 2 > 31 > 2 > 4 에서 1번째 때문에 3번째만 답이되어야하는데 2번째도 답으로 출력됨>> 예외 처리할 아이디어가 안떠올라서 bfs로 풀이풀이package Algorithm;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Collections;import java.util.LinkedList;import java.util.List;import java.util.Queue;import java.util.StringTokenizer;public class S18..

Algorithm 2025.08.27

수학 / 백준 1629 곱셈

문제 접근모듈러 합동 공식에 의거하여 분할과 정복 알고리즘 사용 재귀 함수를 진행하면서 분할풀이package Algorithm;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class S1629 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringToke..

Algorithm 2025.08.27

플로이드 워셜 / 백준 11404 플로이드

문제 접근처음에 dfs 사용해서 구현>> 너무 복잡함 플로이드 워셜 알고리즘 사용>> 모든 노드 간의 최단 경로>> 3중 for문으로 구현풀이package Algorithm;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class G11404 { static int[][] graph; static int n, m; static final int INF = 99999999; public static void main(String[] args) throws IOException{ Buffere..

Algorithm 2025.08.26

DP / 백준 12865 평범한 배낭

문제 접근조합 구하고 max 함수로 가치 계산>> 재귀로 구현돼서 시간 초과 DP로 접근풀이package Algorithm;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class G12865 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringToken..

Algorithm 2025.08.18

HashMap / 백준 18870 좌표 압축

문제 접근시간제한 2초>> 입력이 1,000,000이라 이중 for문 사용해서 일일이 확인하면 시간초과 HashMap 사용>> containsKey() 특정 키 존재 확인으로 값 중복인 경우 해결풀이package Algorithm;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.HashMap;import java.util.StringTokenizer;public class S18870 { public static void main(String[] args) throws IOException{ Buffere..

Algorithm 2025.08.11