문제
https://level.goorm.io/exam/195691/%ED%8F%AD%ED%83%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-2/quiz/1
풀이
1. 2차원 리스트 ground로 땅을 표현했다. 땅에 폭탄 값을 지정할 때 이 ground를 바꿀 것이다
2. value는 좌표 (y,x) tuple을 키값으로 초기에 표시되어 있던 값을 저장한다.(ground는 변경용, value는 초기 기록용)
3. nx,ny를 통해 현위치,상,하,좌,우 를 모두 돌도록 처리했다. 지금 좌표 nx,ny에 따라 그 지점의 초기 지정값(value에 저장해놨다)인 state값에 따라, 적절한 값을 더해줬다
코드
첨언
- 좌표 접근은 이전보다 수월하게 한 듯 하다
- 다른 사람들 풀이 보면 더 간략하던데,, 충분히 더 간략하게 풀 수 있던 것 같다. 그러나 구현을 연습하기엔 좋았다
- 2차원 배열에 보통 int가 저장되는 것과 달리, #와 @때문에 일단 str으로 처리했다. 마지막 이중for문에서 형변환을 처리할 때 조금 버벅였다
- isdigit()은 str을 기준으로 작동하는 함수이기에, ground[y][x]를 str로 형변환 한 후, isdigit()함수를 적용했다.