Kua
Kua's Miscellaneous
Kua
  • 분류 전체보기 (156)
    • 대문 (2)
    • Tips (22)
      • Chrome (2)
      • Windows (2)
      • IDE (3)
      • 기타 (15)
    • CodingTest (44)
    • Language (17)
      • PHP (5)
      • C# (7)
      • Java (1)
      • Kotlin (4)
    • Framework & Runtime (12)
      • SpringBoot (8)
      • Node.js (2)
      • Vue.js (1)
      • Gradle (1)
    • DevOps (11)
      • Docker (4)
      • Kubernetes (2)
      • Apache Kafka (1)
      • AWS (0)
    • 일상다반사 (37)
      • 도서 (1)
      • 개발 (7)
      • 후기 (9)
      • 방송통신대학교 (4)
      • 음식 (2)
    • Games (11)
      • Minecraft (7)
      • VR (2)
      • 그외 (2)

다른 링크

  • Github

최근 글

  • 서울역 유명 맛집 유즈라멘 후기
    2022.05.08
    서울역 유명 맛집 유즈라멘 후기
  • 세로 모니터에 스포티파이를 놓⋯
    2022.05.03
    세로 모니터에 스포티파이를 놓⋯
  • 남양주 별내동 브런치카페 프라⋯
    2022.05.01
    남양주 별내동 브런치카페 프라⋯
  • Ubuntu 20 MariaDB Conf Path
    2022.04.25
  • 파일시스템(파일탐색기) 사이드⋯
    2022.04.25
    파일시스템(파일탐색기) 사이드⋯

인기 글

  • 쿠버네티스 전문가 양성 과정 2⋯
    2021.10.30
  • 쿠버네티스 전문가 양성 과정 2⋯
    2021.12.19
  • 쿠버네티스 전문가 양성 과정 2⋯
    2021.12.28
  • Twitch Now 는 이제 작동하지⋯
    2022.03.02
    Twitch Now 는 이제 작동하지⋯
  • [Kotlin] Unexpected error occ⋯
    2021.12.24
    [Kotlin] Unexpected error occ⋯
반응형

최근 댓글

  • 안녕하세요 메일로 답변을⋯
    Kua
  • 안녕하세요, 메일로 답장 드렸⋯
    Kua
  • 세대가 더 중요하긴 하지만, cp⋯
    Kua
  • 안녕하세요 먼저 후기글 감사합⋯
    bbbb56146
  • 안녕하세요 네, 저도 재직 중입⋯
    Kua

태그

  • Kotlin
  • c#
  • spring
  • error
  • minecraft
  • Silver5
  • codingtest
  • Level1
  • github
  • Algorithm
  • java
  • 플러그인
  • 코딩테스트
  • 알고리즘
  • Plugin
  • 마인크래프트
  • function
  • 백준
  • bronze1
  • bronze2
전체 방문자
21,744
오늘
102
어제
54
hELLO · Designed By 정상우.
Kua

Kua's Miscellaneous

CodingTest

(백준/Kotlin) 2667번 : 단지번호붙이기

2021. 11. 22. 11:49

난이도: Silver 1

프로그래밍 언어: Kotlin

문제명: 단지번호붙이기

푼일자: 2021년 11월

 

주소: https://www.acmicpc.net/problem/2667

 

문제풀기

이게 실버 1 문제라고..? 하면서 너무 쉽게 풀어버린 문제였습니다.

dfs 를 이용하였습니다.

 

package kr.kua.baekjoon

val dirs = arrayOf(intArrayOf(-1, 0), intArrayOf(1, 0), intArrayOf(0, 1), intArrayOf(0, -1))
var m = 0
var n = 0
var t = 0
fun main() = with(System.`in`.bufferedReader()) { // 단지번호붙이기
    m = readLine().toInt()
    n = m
    val grid: Array<CharArray> = Array(m) { CharArray(n) }
    repeat(m) { grid[it] = readLine().toCharArray() }
    val list = mutableListOf<Int>()
    for (i in 0 until m) {
        for (j in 0 until n) {
            if (grid[i][j] == '1') {
                t = 0
                dfs(grid, i, j)
                list.add(t)
            }
        }
    }

    println(list.count())
    list.sorted().forEach { println(it) }
}

fun dfs(grid: Array<CharArray>, i: Int, j: Int) {
    if (i < 0 || i >= m || j < 0 || j >= n || grid[i][j] != '1') return
    t++
    grid[i][j] = 'X'
    for (dir in dirs) dfs(grid, i + dir[0], j + dir[1])
}

 

반응형
저작자표시비영리
    'CodingTest' 카테고리의 다른 글
    • (백준/Kotlin) 1159번 : 농구 경기
    • (백준/Kotlin) 5430번 : AC
    • (백준/Kotlin) 5635번 : 생일
    • (백준/Kotlin) 11650번 : 좌표 정렬하기
    Algorithm, Kotlin, Silver1, 백준, 알고리즘, 코딩테스트
    Kua
    Kua
    정보 공유, 개인 정리 공간 입니다.
    댓글쓰기
    다음 글
    정규 표현식(RegEx/RegExp) 를 쉽고 빠르게 배울 수 있는 사이트
    이전 글
    줌혐오 (개적화)
    • 이전
    • 1
    • ···
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • ···
    • 156
    • 다음

    티스토리툴바