본문 바로가기
Algorithm and PS/백준(Kotlin)

백준 - 1475 방 번호 (코틀린)

by ESHC 2021. 5. 19.

[문제]

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

 

1475번: 방 번호

첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수 또는 0이다.

www.acmicpc.net

[코드]

import java.io.*
import java.util.*

fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))
    val bw = BufferedWriter(OutputStreamWriter(System.out))
    val n = StringTokenizer(br.readLine()).nextToken()
    val arr = Array(10){ 0 }
    for(i in n) {
        val idx = Character.getNumericValue(i)
        if(idx == 9)
            arr[6] += 1
        else
            arr[idx] += 1
    }
    arr[6] = if(arr[6]%2 > 0) arr[6]/2 + 1 else arr[6]/2
    var max = 0
    for(i in arr){
        max = if(max < i) i else max
    }
    bw.write(max.toString())
    bw.flush()
    bw.close()
}

[풀이]

배열을 만들고 입력받은 수의 자릿수에 해당하는 인덱스 값을 1씩 증가시키는데

이 때 9와 6은 뒤집으면 같게 보기 때문에 자릿수 9는 인덱스 6 값을 증가시킨다.

인덱스 6의 값이 짝수이면 나누기 2하고 홀수이면 나누기 2한 값에 1을 더하여서 저장한 값과

나머지 인덱스에서 최댓값을 구해서 필요한 세트의 갯수를 구한다. 

 

Github : https://github.com/eshc123/2021AlgorithmStudy/blob/main/src/main/PS/baekjoon/1475.kt

댓글