[백준] 7569번 토마토 [Python] - BFS
익은 토마토는 하루가 걸려서 상,하,좌,우,앞,뒤로 1칸 떨어진 안익은 토마토를 익게 만든다. H, N, M과 토마토의 상태가 M개씩 N개의 줄로 H번 주어질 때, 모든 토마토가 익는 최소 일수를 구하는 문제 1: 익은 토마토 0: 안익은 토마토 -1: 빈 칸 익지 않는 토마토가 있을 경우$($토마토는 자동으로 익지 않고, 위의 규칙에 의해서만 익는다고 하자.$)$ >>> -1 출력 더보기 문제 철수의 토마토 농장에서는 토마토를 보관하는 큰 창고를 가지고 있다. 토마토는 아래의 그림과 같이 격자모양 상자의 칸에 하나씩 넣은 다음, 상자들을 수직으로 쌓아 올려서 창고에 보관한다. 창고에 보관되는 토마토들 중에는 잘 익은 것도 있지만, 아직 익지 않은 토마토들도 있을 수 있다. 보관 후 하루가 지나면, 익은..
[백준] 11403번 경로 찾기 [Python] - DFS, BFS, 플로이드–워셜
가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 $(i, j)$에 대해서, i에서 j로 가는 길이가 양수인 경로가 있는지 없는지 구하는 문제 플로이드–워셜, dfs, bfs를 사용한 코드들을 작성해봤습니다. 더보기 문제 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 $(i, j)$에 대해서, i에서 j로 가는 길이가 양수인 경로가 있는지 없는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정점의 개수 N $(1 ≤ N ≤ 100)$이 주어진다. 둘째 줄부터 N개 줄에는 그래프의 인접 행렬이 주어진다. i번째 줄의 j번째 숫자가 1인 경우에는 i에서 j로 가는 간선이 존재한다는 뜻이고, 0인 경우는 없다는 뜻이다. i번째 줄의 i번째 숫자는 항상 0이다. 출력 총 N개의 줄에 걸쳐서 문제..