Park DJ
dj0998
Park DJ
전체 방문자
오늘
어제
  • 분류 전체보기 (363)
    • 백준 (363)

공지사항

인기 글

태그

  • 백준 1747
  • 백준 14582
  • 백준 4659
  • 백준 12871
  • 백준
  • 백준 15312
  • 백준 7662
  • 백준 16194
  • 백준 6550
  • 백준 15655
  • 백준 16926
  • 백준 1064
  • 백준 8892
  • 백준 12605
  • 백준 3135
  • 백준 2591
  • 백준 3049
  • 자바
  • 백준 2343
  • 백준 10709
  • 백준 1495
  • 백준 2225
  • 백준 7567
  • 백준 24039
  • 백준 15961
  • 백준 1011
  • 백준 1531
  • Java
  • 백준 2467
  • 백준 1914
hELLO · Designed By 정상우.
Park DJ

dj0998

백준 1743 음식물 피하기(Java)
백준

백준 1743 음식물 피하기(Java)

2023. 2. 20. 15:36

https://www.acmicpc.net/problem/1743

 

1743번: 음식물 피하기

첫째 줄에 통로의 세로 길이 N(1 ≤ N ≤ 100)과 가로 길이 M(1 ≤ M ≤ 100) 그리고 음식물 쓰레기의 개수 K(1 ≤ K ≤ N×M)이 주어진다.  그리고 다음 K개의 줄에 음식물이 떨어진 좌표 (r, c)가 주어진다

www.acmicpc.net

 


 

Java 코드

 


import java.util.Scanner;

public class Main {

  static int max = -1;
  static int count;
  static int n;
  static int m;
  static int[] dx = {1, -1, 0, 0};
  static int[] dy = { 0, 0, -1, 1};
  static boolean[][] visit;
  static int[][] arr;

  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
  
    n = sc.nextInt();
    m = sc.nextInt();
    int k = sc.nextInt();

    arr = new int[n][m];
    visit = new boolean[n][m];

    for(int i = 0; i < k; i++) {
      int a = sc.nextInt();
      int b = sc.nextInt();
      arr[a - 1][b - 1] = 1;
    }

    for(int i = 0; i < n; i++) {
      for(int j = 0; j < m; j++) {
        if(arr[i][j] != 0 && visit[i][j] == false) {
          count = 0;
          dfs(i, j);
          max = Math.max(max, count);
        }
      }
    }

    System.out.println(max);
  }

  public static void dfs(int a, int b) {
    count++;
    visit[a][b] = true;
    for(int i = 0; i < 4; i++) {
      int x = a + dx[i];
      int y = b + dy[i];
      if(x >= 0 && x < n && y >= 0 && y < m && arr[x][y] != 0 && visit[x][y] == false) dfs(x, y);
    }
  }
  
}

'백준' 카테고리의 다른 글

백준 4659 비밀번호 발음하기(Java)  (0) 2023.02.20
백준 1495 기타리스트(Java)  (0) 2023.02.20
백준 16194 카드 구매하기(Java)  (0) 2023.02.20
백준 15688 수 정렬하기 5(Java)  (0) 2023.02.20
백준 1850 최대공약수(Java)  (0) 2023.02.20
    '백준' 카테고리의 다른 글
    • 백준 4659 비밀번호 발음하기(Java)
    • 백준 1495 기타리스트(Java)
    • 백준 16194 카드 구매하기(Java)
    • 백준 15688 수 정렬하기 5(Java)
    Park DJ
    Park DJ

    티스토리툴바