본문 바로가기

알고리즘/반복문

[백준][KOTLIN][4779] 칸토어 집합

728x90

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

 

4779번: 칸토어 집합

칸토어 집합은 0과 1사이의 실수로 이루어진 집합으로, 구간 [0, 1]에서 시작해서 각 구간을 3등분하여 가운데 구간을 반복적으로 제외하는 방식으로 만든다. 전체 집합이 유한이라고 가정하고,

www.acmicpc.net

문제 풀이

1. result 의 초기 값을 "-" 로 설정 한다.

2. N 크기 만큼 아래의 과정을 반복한다.

3. result 값 + (result 의 크기 만큼 빈칸) + reulst 값 을 채운다.

4. result 를 출력한다.

코드

import java.util.Scanner

fun main(args: Array<String>) {
    val sc = Scanner(System.`in`)

    while (sc.hasNext()) {
        val N = sc.nextInt()
        var result = "-"

        repeat(N) {
            result = cantor(result)
        }

        println(result)
    }
}

private fun cantor(str: String): String {
    return str + " ".repeat(str.length) + str
}
728x90

'알고리즘 > 반복문' 카테고리의 다른 글

[KOTLIN] 모음사전  (0) 2022.05.23
[KOTLIN] 삼각 달팽이  (0) 2022.04.19
[KOTLIN] 예상 대진표  (0) 2022.03.03
[KOTLIN] 행렬 테두리 회전하기  (0) 2022.02.18
[KOTLIN] 소수 만들기  (0) 2022.02.08