반응형

파이썬 문제풀이/DFS,BFS 4

[백준 파이썬] 14502번 연구

[백준 파이썬] 14502번 연구문제인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 연구소의 크기는 N x M인 직사각형으로 나타낼 수 있으면 1X1 정크기의 정사각형으로 나누어져 있다.연구소는 빈칸과 벽칸으로 이루어져 있다. 바이러스는 인접한 상화좌우로 퍼져나갈 수 있다.벽을 세워서 바이러스가 퍼지는걸 막아야 하는데 세울 수 있는 벽의 개수는 3개이면 꼭 3개만 세워야 한다.이때 바이러스가 퍼지지 않은 빈칸의 개수가 최대가 되는 값을 구하여라. 입력첫줄에 연구소의 세로 N과 가로 M이 주어진다그다음줄부터 N줄에 지도의 모양이 주어진다. 0은 빈칸 1은 벽 2는 바이러가 있는 위치이다.출력첫째 줄에 얻을 수 있는 안전 영역의 최대 크기를 출력한다.풀이BFS와 백트래킹을 이용하여 문제..

[백준 파이썬] 2573 빙산

[백준 파이썬] 2573 빙산 https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 문제 입력 첫 줄에는 이차월 배열의 행의 개수와 열의 개수를 나태 내는 N M 이 주어진다 두 번째 줄부터 배열의 각 행을 나타내면 M개의 정수가 비칸 사이에 주어진다 간 칸은 0이상 10 이하의 값이 들어간다 첫 번째 행과 열 마지막행과 열에는 항상 0으로 채워진다 출력 첫줄에 빙산이 분리되는 최초의 시간을 출력한다 빙산이 다 녹음 때 까지 분리되지 않으면 0..

백준 7562 나이트의 이동 파이썬 풀이

https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 나이트는 총 8방향으로 이동한다 현재위치가 (0,0) 일때 (1,2) (-1,2) (1,-2) (-1,-2) (2,1) (2,-1) (-2,1) (-2,-1) 그렇기에 bfs 알고리즘을 사용하여 현재 위치에 대해서 8방향의 이동을 모두 돌리고 이미 방문한 위치라면 이동하지 않게 만들었다 8방향으로 이동할때 주어진 체스판 넘어로 이동하지 못하도록 조건또한 추가해주어야한다. 알고리즘 1)체스판 범위 만큼..

반응형