10966. 물놀이를 가자

2023. 9. 4. 17:09·swea

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXWXMZta-PsDFAST&categoryId=AXWXMZta-PsDFAST&categoryType=CODE&problemTitle=%EB%AC%BC%EB%86%80%EC%9D%B4&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

from collections import deque
 
def bfs():
    global result
    for i in range(n):
        for j in range(m):
            if arr[i][j] == 'W':  # W인 칸을 모두 저장
                q.append((i, j))
                visited[i][j] = 0  # visited 기본값이 -1이므로 0은 방문했다는 뜻
    while q:
        i, j = q.popleft()
        for di, dj in [(1, 0), (-1, 0), (0, -1), (0, 1)]:
            ni, nj = i + di, j + dj
            if 0 <= ni < n and 0 <= nj < m and arr[ni][nj] == 'L' and visited[ni][nj] == -1:  
                q.append((ni, nj))  
                visited[ni][nj] = visited[i][j] + 1  # 깊이 기록
    s = 0
    for i in range(n):
        for j in range(m):
            s += visited[i][j]  # 모든 이동횟수 누적합
    return s
 
T = int(input())
for tc in range(1,T+1):
    n, m = map(int, input().split())
    arr = [input() for _ in range(n)]
    q = deque()
    visited=[[-1]*m for _ in range(n)]  # 디폴트를 -1로 해야 이동횟수가 맞음
 
    print(f'#{tc} {bfs()}')

반대로 W에서 L로 가는 이동횟수를 세는 것이 더 편함!

저작자표시 (새창열림)

'swea' 카테고리의 다른 글

1953. [모의 SW 역량테스트] 탈주범 검거  (0) 2023.09.04
4366. 정식이의 은행업무  (0) 2023.09.04
1220. [S/W 문제해결 기본] 5일차 - Magnetic  (0) 2023.08.28
1860. 진기의 최고급 붕어빵  (0) 2023.08.28
2117. [모의 SW 역량테스트] 홈 방범 서비스  (0) 2023.08.28
'swea' 카테고리의 다른 글
  • 1953. [모의 SW 역량테스트] 탈주범 검거
  • 4366. 정식이의 은행업무
  • 1220. [S/W 문제해결 기본] 5일차 - Magnetic
  • 1860. 진기의 최고급 붕어빵
버그잡는고양이발
버그잡는고양이발
주니어 개발자입니다!
  • 버그잡는고양이발
    지극히평범한개발블로그
    버그잡는고양이발
  • 전체
    오늘
    어제
    • 분류 전체보기 (381)
      • React (16)
      • Next.js (5)
      • Javascript (5)
      • Typescript (4)
      • Node.js (2)
      • Cs (16)
      • 트러블 슈팅 (5)
      • Html (1)
      • Css (3)
      • Django (0)
      • vue (0)
      • Java (1)
      • Python (0)
      • 독서 (1)
      • 기타 (3)
      • 백준 (192)
      • swea (31)
      • 프로그래머스 (30)
      • 이코테 (4)
      • 99클럽 코테 스터디 (30)
      • ssafy (31)
      • IT기사 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 인기 글

  • 태그

    99클럽
    Til
    항해99
    코딩테스트준비
    개발자취업
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
버그잡는고양이발
10966. 물놀이를 가자
상단으로

티스토리툴바