코딩 테스트 챌린지

[10월 코테 챌린지] 백준 2차 :: 누적 21개 / (실버2) 1012. 유기농 배추

  • -
728x90
반응형

2024/10/31

[Today]
백준 2차 :: 누적 21개 / (실버2) 1012. 유기농 배추

[전체 코딩 테스트 문제 풀이 과정]
•  프로그래머스 :: 누적 372개 / (Lv0) 236개 (Lv1) 73개 (Lv2) 53개 (Lv3) 10개
 백준 1차 :: 누적 173개 / (브론즈1) 13개 (브론즈2) 23개 (브론즈3) 26개 (브론즈4) 9개 (브론즈5) 37개 (실버1) 5개 (실버2) 6개 (실버3) 10개 (실버4) 19개 (실버5) 18개 (골드1) 1개 (골드5) 1개
• 백준 2차 :: 누적 21개 / (실버1) 7개 (실버2) 2개 (실버3) 8개 (실버4) 2개 (실버5) 2개

SW expert academy:: 누적 15개 / D1 6개 D2 9개


풀이한 문제

백준 실버2
1012번: 유기농 배추

from collections import deque

def bfs(graph,start):
    graph[start[0]][start[1]]=0
    directions = [(-1,0),(0,-1),(0,1),(1,0)]
    count = 1
    dd = deque([start])
    while dd:
        x,y = dd.popleft()
        for dx,dy in directions:
            xx = x+dx ; yy = y+dy
            if 0<=xx<n and 0<=yy<m and graph[xx][yy]==1:
                count += 1
                graph[xx][yy] = 0
                dd.append((xx,yy))
    return count

T = int(input())
for _ in range(T):
    m,n,k = map(int,input().split())
    ls = [[0]*m for i in range(n)]
    for __ in range(k):
        i,j = map(int,input().split())
        ls[j][i]=1
    answer = []
    for i in range(n):
        for j in range(m):
            if ls[i][j] == 1:
                answer.append(bfs(ls,(i,j)))
    print(len(answer))

 

 

 

S1 2667. 단지번호붙이기

문제 보기 :  2667번: 단지번호붙이기 (acmicpc.net) 문제정답률 : 42%작성 코드 & 풀이 과정 코멘트from collections import dequedef solution(graph,start): graph[start[0]][start[1]]= 0 direction = [(-1,0),(1,0),(0,-1),(0,1)] count =

dtdiary.tistory.com

실버1의 <단지번호 붙이기> 문제와 완전히 동일하지는 않지만 비슷해서
참고 게시글로 태그해두었다.


미완성 문제

프로그래머스  Lv2

  1. 다리를 지나는 트럭
320x100
728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.