본문 바로가기
프로그래머스 깊이/너비 우선 탐색(DFS/BFS) LV3 - 단어변환 https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krBFS로 큐에서 뽑은 문자열과 단어 리스트 내의 문자열을 비교해 차이나는 문자의 개수가 1개인 문자열을 큐에 넣고 target이 나올 때까지 돌린 후 depth를 출력했다. IDE를 안쓰니까 어색하다.import java.util.*;import java.util.stream.*;class Solution { public int solution(String begin, String target, String[] words) { List .. 2025. 9. 29.
프로그래머스 깊이/너비 우선 탐색(DFS/BFS) LV3 - 네트워크 https://school.programmers.co.kr/learn/courses/30/lessons/43162?language=java 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정점의 개수와 간선 정보가 주어졌을 때, 연결된 정점 그룹의 개수를 구하는 문제이다.DFS를 이용해 count했다. class Solution { public int solution(int n, int[][] computers) { boolean[] visited = new boolean[n]; int count = 0; for(int i = 0; i 2025. 9. 29.
[JAVA] 백준 1343 - 폴리오미노 https://www.acmicpc.net/problem/1343 입력을 받은 후 여러개의 마침표로 split된 배열 하나, 여러개의 X로 split된 배열 하나를 만들고마침표로 split된 배열에 대해 만약 length가 홀수면 -1 반환 후 함수를 종료하고짝수라면 최대한 AAAA를 채운 뒤 나머지에 대해 BB를 채운 문자열을 생성해 배열에 저장했다.그 이후 입력 문자열의 각 character를 읽어 X라면 AB로 변환한 배열에서 순번에 맞는 문자열을 가져와 붙이고 반복문의 index를 가져온 문자열의 길이 -1 만큼 늘리고, 마침표라면 마침표를 모아놓은 배열에서 가져와 붙여서정답 문자열을 만들었다.import java.io.BufferedReader;import java.io.IOException;i.. 2025. 9. 29.
[JAVA] 백준 9893 - Paths https://www.acmicpc.net/problem/9893정점과 간선 리스트가 주어졌을 때, 0 -> 1까지 가는 최소 거리, 최소 비용 가중치를 구하는 문제이다.짧으면 무조건 1 순위, 경로의 길이가 같으면 비용을 비교한다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.i.. 2025. 9. 29.