ed-kyu
ee
ed-kyu
전체 방문자
오늘
어제
  • 분류 전체보기 (26)
    • 딥러닝, 머신러닝 (17)
      • NLP (0)
      • Vision (0)
      • 모두를 위한 딥러닝 강의 복습 (9)
      • Andrew Ng 강의 (0)
      • 캐글 (1)
      • 수학 (0)
      • DL Basic (5)
      • 논문 스터디 (2)
      • Product Serving (0)
    • TIL (1)
      • OS (0)
      • Network (0)
      • DB (0)
      • Docker (0)
      • Data Engineering (1)
    • 알고리즘 문제풀이 (3)
      • Baekjoon Algorithm (3)
      • Programmers (0)
    • 주제 없음 (5)
      • Python (2)
      • 기록 (1)
      • etc (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Kaggle
  • ml
  • 티스토리챌린지
  • 유기농 배추
  • Python
  • DeepLearningZeroToAll
  • 1012
  • 오블완
  • 백준

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
ed-kyu

ee

백준 1012 유기농 배추 (Python)
알고리즘 문제풀이/Baekjoon Algorithm

백준 1012 유기농 배추 (Python)

2021. 8. 11. 00:54

문제링크 : https://www.acmicpc.net/problem/1012

 

1012번: 유기농 배추

차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 

www.acmicpc.net

 

dfs/bfs + 상하좌우로 움직이는 문제

 

여기 예시에서는 1을 잇는 덩어리가 5개이므로 답은 5

 

일반적인 dfs, bfs문제와 다르게 상하좌우로 움직이는 것을 생각해야 하는데, 이는 꽤 코딩테스트에도 나올 가능성이 있는 문제라고 생각한다.

 

생각해내야할 중요한 부분은

1. 상하좌우 이동 변수 만들기

dx = [1, -1, 0, 0]
dy = [0, 0, 1, -1]

2. for i in range(4)를 돌면서 dfs로 체크

for i in range(4): 
    posx = x + dx[i]
    posy = y + dy[i]

    if (0 <= posx < n) and (0 <= posy < m):
        if vegetable_list[posx][posy] == 1:
            vegetable_list[posx][posy] = 0
            dfs(posx, posy, m, n, vegetable_list)

 

'알고리즘 문제풀이 > Baekjoon Algorithm' 카테고리의 다른 글

백준 1463 1로 만들기 (Python)  (0) 2022.02.22
백준 2529 부등호 (Python)  (0) 2022.02.18
    '알고리즘 문제풀이/Baekjoon Algorithm' 카테고리의 다른 글
    • 백준 1463 1로 만들기 (Python)
    • 백준 2529 부등호 (Python)
    ed-kyu
    ed-kyu

    티스토리툴바