목록bfs (17)
It's easy, if you try
문제 23289번: 온풍기 안녕! 유난히 추운 날씨가 예상되는 이번 겨울을 대비하기 위해 구사과는 온풍기를 설치하려고 한다. 온풍기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int[][] map; static boolean[][] visited; static List checkAreas; static List machines; static boolean[][][][] wall; static int N, M, K, W; static int[] dx = {0, 0, 0, -1, 1}; // 1우, 2좌, 3상, ..
문제 19238번: 스타트 택시 첫 줄에 N, M, 그리고 초기 연료의 양이 주어진다. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 연료 ≤ 500,000) 연료는 무한히 많이 담을 수 있기 때문에, 초기 연료의 양을 넘어서 충전될 수도 있다. 다 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int N, M, oil, cnt = 0; static int[][] map, start, dest; static int[] taxi; public static void main(String[] args) throws IOException { BufferedReader br = new Buffered..
문제 https://level.goorm.io/exam/82306/%EC%B5%9C%EC%86%8C-%EC%9D%B4%EB%8F%99-%EB%B9%84%EC%9A%A9/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 풀이 import java.io.*; import java.util.*; class Main { static int[][] map; static int[][] dp; static int n, m; static int[] dx = {1, 0}; // 우, 하 이동 stat..
문제 https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr 풀이 해당 문제는 노드의 개수가 2 이상 20,000 이하로 매우 큰 편이다. 때문에, 제일 깊은 노드까지 갔다가 다시 돌아와서 다른 노드를 살펴보는 깊이우선탐색(DFS) 보다는 넓이 위주로 탐색하면서 마지막 깊이의 노드들의 개수를 반환하는 방식의 BFS 방식이 효율적이다. 또한 2차원 배열을 사용해 O(N^3) 시간 복잡도를 가지는 플로이드 와샬 풀이도 메모리 초과가 난다. BFS 코드 import java.util.*; i..
문제 1194번: 달이 차오른다, 가자. 첫째 줄에 미로의 세로 크기 N과 가로 크기 M이 주어진다. (1 ≤ N, M ≤ 50) 둘째 줄부터 N개의 줄에 미로의 모양이 주어진다. 같은 타입의 열쇠가 여러 개 있을 수 있고, 문도 마찬가지이다. 그리고, www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int N, M; static char[][] map; static int[] dx = {-1, 1, 0, 0}; ..
문제 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com > 벽돌 깨기 검색하기 ! 풀이 dropBoxToEmptyArea() 함수 즉, 벽돌들이 아래로 내려오게 하는 함수를 짜는게 제일 어려웠다ㅠㅠ bfs, 중복 순열을 사용해서 하라는대로 하면 되는 문제였다 ! import java.io.*; import java.util.*; public class Solution_5656_벽돌깨기 { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int[][] map,..
문제 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int N, M, total = 0; static int[][] map, visited; static int[] dx = {-1, 1, 0, 0}; s..
문제 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int[][] map; static boolean[][] visited; static int N, M, year =0; static int[..
문제 14923번: 미로 탈출 홍익이는 사악한 마법사의 꾐에 속아 N x M 미로 (Hx, Hy) 위치에 떨어졌다. 다행히도 홍익이는 마법사가 만든 미로의 탈출 위치(Ex, Ey)를 알고 있다. 하지만 미로에는 곳곳에 마법사가 설치한 벽이 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br= new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int N, M, Hx, Hy, Ex, Ey; static int[][] map; static boolean[][][] visite..
문제 17472번: 다리 만들기 2 첫째 줄에 지도의 세로 크기 N과 가로 크기 M이 주어진다. 둘째 줄부터 N개의 줄에 지도의 정보가 주어진다. 각 줄은 M개의 수로 이루어져 있으며, 수는 0 또는 1이다. 0은 바다, 1은 땅을 의미한다. www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; // input static int N, M; // 세로, 가로 static int[][] map; // 섬의 상태를 담는다. static..