[ STUDY ]/CodingTest 38

백준 1389 : 케빈 베이컨 6단계 법칙

🔍 문제모든 사람간의 최단거리 구하기 플로이드 워셜 사용해서 푸는건 알았는데 자꾸 답이 안나오는거... 👾 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;public class P1389 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer..

백준 30804 : 과일 탕후루

🔍 문제과일이 두 종류가 남도록 앞뒤에서 과일을 뺀다. 이때 가장 많이 남길수 있는 경우의 값 구하기 투포인터와 해쉬맵을 사용해서 풀이한다. 👾 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.StringTokenizer;public class P30804 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in));..

백준 18111 : 마인 크래프트

일정한 높이의 땅을 만드는데 최소 시간과 땅높이 구하는 문제다...일단 풀긴 풀었는데 코드가 너무 더러워서 코드 정리를 해보겟슴.. 기존 코드ㅋㅋimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class P18111 { static int N, M; static long B; static int[][] block; static int time, height; public static void main(String[] args) throws IOException { BufferedRea..

백준 1927 : 최소 힙

1927 : 최소 힙문제 풀이다들 우선순위 큐가 최소 힙 기반이라는거 알고계셨나요? 저는 방금 알았는데요.. 실행 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.PriorityQueue;public class P1927 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder();..

백준 1260 : DFS와 BFS(오늘의 교훈 : 문제를 잘 읽자)

문제문제그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. 입력첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다. 출력첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수행한 결과를 출력한다. V부터 방문된 점을 순서대로 출력하면 된다. 실..

11727 : 2 x n 타일링2 (DP)

11727 : 2xn 타일링 2문제2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.아래 그림은 2×17 직사각형을 채운 한가지 예이다.입력첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000)  출력첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.  문제 풀이풀어버림.....사실 2xn 첫번째 문제 덕분에 푼 듯..?점화식 > dp[n-1] + dp[n-2] * 2dp[n-1]은 경우가 하나뿐임 그냥 세로타일 채우기dp[n-2]는 정사각형, 세로두개, 가로두개 이렇게 경우가 3개인데 세로 두개는 dp[n-1]에서 들어가니께 뺀다! 실행 코드import java.util.Scanner;public class P1..

백준 9095 : 1, 2, 3 더하기(DP)

9095 : 1, 2, 3 더하기문제정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다.1+1+1+11+1+21+2+12+1+12+21+33+1정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 11보다 작다. 출력각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다.입력출력34710744274 문제 풀이점화식+1을 하는 경우+2를 하는 경우+3을 하는 경우를 다 더함dp[j] = dp[j - 1] + dp[j - 2] + dp..

백준 2579 : 계단 오르기(DP)

2579 : 계단 오르기문제계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다.예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 75점이 된다.계단 오르는 데는 다음과 같은 규칙이 있다.계단은 한 번에 한 계단씩 또는 두 계단씩 오를 수 있다. 즉, 한 계단을 밟으면서 이어서 다음 계단이나, 다음 다음 계단으로 오를 수 있다.연속된 세 개의 계단을 모두 밟아서는 안 된다. 단, 시작점은 계단에 포함되지 않는다.마지막 도착 계단은 반드시 밟아야 한다.따라서 첫 번..

[ 런타임에러 ] /by zero

듣도보도 못한 오류임 0으로 나누기 (division by zero)가 발생했을 때 나타나는 오류 • 반복문에서 값 감소로 인해 0이 됨조건문으로 0을 확인하거나, 반복문의 종료 조건을 조정하세요. • 사용자 입력값이 0사용자 입력값을 항상 검증하여 처리하세요. • 수식에서 변수 값이 0으로 설정코드 로직을 확인하여 0이 될 가능성을 배제하거나, 0일 경우 기본값을 설정하세요.