Learn to share,Share to learn

14052 파이썬 본문

알고리즘

14052 파이썬

Rogue One 2024. 1. 16. 16:47
from itertools import permutations

N,M = map(int,input().split())
max_safe = -1
room = [map(int,input().split()) for _ in range(N)]

def contagious_room(room[][]):
  여기다 감염된 방 재귀로 작성
  x+1과 y+1이 0이라면 1로 바꾸기

max_safe = max(0 개수 세기,max_safe)

그렇다면 1을 어떻게 랜덤하게 배치해야 하는가?
순열을 이용해서 조합을 만들고, 각 조합마다 contagious_room 함수를 실행해서 안전한 방 개수를 세기

브레인 스토밍

 

그런데 아무리봐도 시간복잡도가 분명 터질거같다. 브루트포스 문제집에 있는데 골드4라 되어있어 알고리즘 분류를 보니 dfs로 풀어야 할거같은데... 일단은 킵