반응형
문제 출처 :
https://www.acmicpc.net/problem/16956
알고리즘 분석 :
문제 해결에 필요한 사항
1. 구현
.을 모두 D로 바꾸고 S가 있는 위치의 상하좌우에 늑대 W가 있는지 확인하면 된다.
소스 코드 :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | n, m = [int(x) for x in input().split()] arr = [input().replace('.','D') for i in range(n)] for i in range(n): for j in range(m): if arr[i][j] == 'S': if i - 1 >= 0 and arr[i - 1][j] == "W": print(0) exit(0) elif i + 1 < n and arr[i + 1][j] == "W": print(0) exit(0) elif j - 1 >= 0 and arr[i][j - 1] == "W": print(0) exit(0) elif j + 1 < m and arr[i][j + 1] == "W": print(0) exit(0) print(1) for i in range(n): for j in range(m): print(arr[i][j], end='') print("") | cs |
반응형
'Applied > 알고리즘 문제풀이' 카테고리의 다른 글
[16646번] 콘서트 (0) | 2019.03.07 |
---|---|
[16953번] A → B (0) | 2019.03.05 |
[16234번] 인구 이동 (4) | 2018.10.22 |
[16235번] 나무 재테크 (0) | 2018.10.22 |
[16236번] 아기 상어 (4) | 2018.10.21 |