코딩테스트(Coding Test)

myGoodPlace
[코드트리] 트로미노
🔗문제 보러 가기 두 개의 블럭 중 왼쪽블럭을 2*2의 정사각형 블록이라 생각하여, 2*2 크기의 정사각형 블록 1가지, 1*3 크기의 직사각형 블록 1가지, 3*1 크기의 직사각형 블록 1가지 이렇게 총 3가지 모양의 직사각형이 있다고 생각하였다. 그리고 정사각형 블록 값을 모두 더한 후, 각 한 조각씩 없는 4가지의 세부적인 경우로 나눠 생각했다. import java.io.*; import java.util.*; public class Main { static int N, M; static int[][] board; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new In..
[코드트리] 격자 안에서의 완전탐색
해당문제로 가기 쉬운 문제인데, 한 번 생각을 잘못하니 다른 생각을 할 수 없었던 문제다. import java.io.*; import java.util.*; public class Main { static int N; static int[][] board; public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); N = Integer.parseInt(br.readLine()); board = n..
[구름톤챌린지] 후기
구름톤챌린지 20일 미션을 모두 완수하였다. 하루가 지나면 해설코드를 볼 수 있어서, 내가 풀고 언어별 공식적인(?) 풀이법과 풀이에 필요한 개념을 볼 수 있다는 점이 가장 좋았다.
[JAVA] 그래프 구현 방법 2가지
그래프 구현 방법 2가지 그래프를 구현할 때, 보통 ArrayList를 이용하였는데, Map을 이용하여 구현하는 방법도 익혀보고자 작성하게 되었습니다. ArrayList[] 배열을 사용 그래프 크기가 고정되어 있어야하므로, 최대 크기로 배열의 크기를 선언해야 함 final int MN = 100; ArrayList[] graph = new ArrayList[MN]; for(int i=0; i
플로이드 워셜(Floyd Warshall)
플로이드 워셜(Floyd Warshall) 로버트 플로이드와 스티븐 워셜이라는 컴퓨터 과학자가 고안한 알고리즘 시간복잡도 O(V^3) 사용하는 경우 모든 쌍에 대해 최단거리를 구해야 하는 경우 아이디어 A -> B 경로보다 A -> X -> B로 가는 경로가 더 짧을 경우, 업데이트 방법 2차원 배열 dist[][]를 INF로 초기화. dist[a][b]는 a에서 b로 가는 거리를 뜻하므로, dist[a][a]일 경우 0변경 주어진 경로 거리(가중치) 갱신 dist[a][b]에서 노드 k(1 dist[a][k] + dist[k][b] 만족하는 경우, 해당 값으로 갱신 => 모든 쌍 (a, b)에 대해 노드 k를 경유하는 것이 더 좋은지 확인함 정리 3개의 for문으로 이루어진 3중 반복문으로써 비효율적임..
[구름톤챌린지] 8일차 통증
[구름톤챌린지] 문제 # https://level.goorm.io/exam/195690/%ED%86%B5%EC%A6%9D/quiz/1 N만큼의 통증을 0으로 만들기위한 최소한의 치료약 사용 개수를 구하는 문제 내가 작성한 코드 /* 9개의 테스트케이스 통과 못한 코드 */ import java.io.*; import java.util.*; class Main { static final int MN = (int)1e9; static int N; static int[] dp; static int[] items = {1, 7, 14}; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(n..
[구름톤챌린지] 7일차 구름 찾기 깃발
[구름톤챌린지] 문제 # https://level.goorm.io/exam/195689/%EA%B5%AC%EB%A6%84-%EC%B0%BE%EA%B8%B0-%EA%B9%83%EB%B0%9C/quiz/1 임의의 칸에서 8방향의 인접한 칸을 탐색하여, 인접한 칸들 중 구름이 있는 칸의 개수를 저장하고 주어진 값`K`와 동일한 값을 칸의 개수로 가지는 칸이 몇 개가 존재하는지 구하는 문제 내가 작성한 코드 import java.io.*; import java.util.*; class Main { static final int DIR_NUM = 8; static int[] dy = {-1, -1, -1, 0, 1, 1, 1, 0}; static int[] dx = {-1, 0, 1, 1, 1, 0, -1, -1..
BOJ2847 게임을 만든 동준이
[백준/BOJ] 문제 # https://www.acmicpc.net/problem/2847 주어진 단계별 점수를 오름차순으로 만들기위해 최소한으로 점수를 감소시켜야하는 횟수를 구하는 문제 내가 작성한 코드 import java.io.*; import java.util.*; public class BOJ2847 { static int N; // 레벨의 수 static int[] scores; // 단계별 점수 static int cnt = 0; static int highScore; // 점수를 몇 번 감소시켜야 하는지 기준이 되는 점수 public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader..
sooyeon-kr
'코딩테스트(Coding Test)' 카테고리의 글 목록 (3 Page)