알고리즘44 [백준] 연구소 / 자바 / 브루트포스(그래프 순회) 문제 레벨: G4알고리즘: 브루트포스(그래프 순회)풀이시간: 1시간힌트 참조 유무: 유https://www.acmicpc.net/problem/145021 번째 시도 벽을 세우는 규칙이 안 보이는 것 같다결국 완전탐색 선택또 하나, 힌트인 것은 입력 값 N,M이 8이하이다. 결국 완전탐색을 해도 된다는 소리이다.깊은 복사 필수!!1. 얕은 복사 : '주소 값'을 복사한다는 의미입니다. 2. 깊은 복사 : '실제 값'을 새로운 메모리 공간에 복사하는 것을 의미하며, dfs로 벽을 세울 경우의 수를 탐색하고 3개의 벽을 세우면 bfs함수 호출하여 바이러스를 퍼트리기바이러스를 퍼트릴 때 원본배열에서 퍼트리는 것이 아니라 얕은 복사를 한 배열에 퍼트린 것이다. import java.io.Bu.. 2024. 5. 8. [백준 1167] 트리의 지름 / 자바 / 트리순회(dfs) 문제 레벨: G2알고리즘: DFS풀이시간: 1시간힌트 참조 유무: 유https://www.acmicpc.net/problem/11671 번째 시도 dfs를 통해 임의의 정점 하나에서 가장 먼 정점을 구한다. (임의의 정점은 아무거나 상관없다.)dfs를 통해 구한 정점으로 부터 가장 먼 정점까지의 거리를 구한다. 이게 가장 긴 지름임을 보장하는 이유는 예를 들어 설명하겠다.1 - 2 - 3 - 4 - 5 - 6 이런 일직선의 트리를 생각해보자가장 긴 지름을 구하려면 끝점 두 개를 구해야 한다. 1. 임의점에서 dfs를 하면 끝점 하나가 찾아진다.2. 그 끝점을 기준으로 dfs 하면 다른 끝점이 찾아진다.import java.util.*; public class Main { .. 2024. 5. 6. [백준 1068] 트리 / 자바 / 트리 순회(dfs) 문제 레벨: G5알고리즘: DFS풀이시간: 2시간힌트 참조 유무: 유 https://www.acmicpc.net/problem/10681 번째 시도 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.StringTokenizer;public class Main { static ArrayList list = new ArrayList(); static boolean[] visited; static int answer = 0; public static void main(String[] .. 2024. 5. 4. 항해99 32일차 TIL(강의실 배정 / 백준) 문제 레벨: G5알고리즘: 그리디풀이시간: 1시간힌트 참조 유무: 무https://www.acmicpc.net/problem/110001 번째 시도 끝나는 시간으로 정렬 현재 인덱스 끝나는 시간이 다음 인덱스 시작 시간보다 크다면 answer++ 방의 개수를 새는 자료구조 고민 min변수에 방 최소 개수 담고 우선순위에큐에 끝나는 시간 담기 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 { .. 2024. 5. 1. 항해99 31일차 TIL( 저울 /백준) 문제 레벨: G2알고리즘: 그리디 풀이시간: 1시간힌트 참조 유무: 유<a href="https://www.acmicpc.net/problem/2437" target="_blank" rel="noopener norefer.. 2024. 4. 30. 항해99 30일차 TIL(설탕배달 / 백준) 문제 https://www.acmicpc.net/problem/28391 번째 시도 5킬로그램 봉지가 0개에서부터 5킬로그램 봉지의 최대 개수까지 탐색하며 답을 업데이트 한다.만약 답이 한 번도 업데이트 되지 않는다면 정답이 없는 것이기 때문에 -1을 출력한다.// 3, 5킬로그램 봉지가 있다.// 최대한 5킬로그램 봉지를 많이 들고가야 한다.// 정확하게 N킬로그램을 만들 수 없다면 -1을 출력한다. import java.util.*;import java.io.*;class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(.. 2024. 4. 29. 항해99 29일차 TIL( 에디터 / 백준) 문제 https://www.acmicpc.net/problem/14061 번째 시도 스택 문제를 골라 풀기 시작했지만 처음 봤을 때 스택 문제라고 생각이 안들었습니다.다른 풀이)ArrayList에 문자열을 담는다. 커서위치를 cInd라는 변수에 담는다cInd가 가르키는 곳에 추가하거나 삭제한다.import java.util.*;import java.io.*;class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String input = br.readL.. 2024. 4. 27. 항해99 28일차 TIL( 쇠막대기 / 자바) 문제 https://www.acmicpc.net/problem/10799 1 번째 시도 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Stack;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String s = br.readLine(); int answer = 0; Stack st = new Stack(); .. 2024. 4. 26. 항해99 27일차 TIL( 괄호 / 백준) 99클럽 모의고사를 보고나서 나의 문제점을 발견했다. 문제를 보면 어떤 유형인지 파악하지 못한다는 것이다. 유형을 생각지도 않은 채 무작정 문제를 풀어 생긴 문제라 본다. 알고리즘 문제 별로 푸는 연습을 해야겠다. 오늘은 Stack 문제를 풀어볼 것이다. 문제 9012번: 괄호괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고www.acmicpc.net1 번째 시도 조건에 부합하면 스택에 넣고 차례차례 빼는 느낌의 문제면 Stack문제라 생각하기import java.util.*;import java.io.*;.. 2024. 4. 25. 이전 1 2 3 4 5 다음