1. 문제
https://programmers.co.kr/learn/courses/30/lessons/81302
2. 풀이
dfs로 경로를 확인할때는 ...
-> 이쪽한번 했으면
<- 이쪽으로도 확인해야 돼요
3. 코드
def dfsr(places,x,y,answer):
if (x>=5): return False
if (y>=5): return False
if places[x][y] == 'X':
return False
if places[x][y] == 'P':
if answer >2 :
return False
else :
return True
if places[x][y] == 'O':
return (dfsr(places,x+1,y,answer +1) or dfsr(places,x,y+1,answer +1))
def dfsl(places,x,y,answer):
if (x<0): return False
if (y>=5): return False
if places[x][y] == 'X':
return False
if places[x][y] == 'P':
if answer >2 :
return False
else :
return True
if places[x][y] == 'O':
return (dfsl(places,x-1,y,answer +1) or dfsl(places,x,y+1,answer +1))
def solution(places):
answer = []
for i in places:
flag = True
for x in range(5) :
for y in range(5):
if i[x][y] == 'P':
if(dfsr(i,x+1,y,1) or dfsr(i,x,y+1,1) or dfsl(i,x-1,y,1)or dfsl(i,x,y+1,1)):
flag = False
if(flag):
answer.append(1)
else:
answer.append(0)
return answer
'ALGORITHM > Kakao' 카테고리의 다른 글
[Python] 메뉴 리뉴얼 (0) | 2021.10.08 |
---|---|
[Python] 삼각달팽이 (0) | 2021.10.08 |
[Python] 문자열 압축 (0) | 2021.10.05 |
[Python] 괄호 회전하기 (0) | 2021.10.05 |
[Python] 비밀지도 (0) | 2021.10.03 |