CodingTest/Baekjoon

[baekjoon] 백준 20291번(코틀린): 파일 정리

JunJangE 2022. 8. 28. 11:40

문제

 

20291번: 파일 정리

친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를

www.acmicpc.net

알고리즘

- 반복문을 통해 파일명을 입력받고 '.'을 기준으로 확장자명을 변수에 넣는다.

- 딕셔너리를 통해 확장자명에 개수를 카운트한다.

- 확장자명을 기준으로 정렬 후 확장자명과 개수를 출력한다.

코드

package beakjoon.implementation

import java.io.BufferedReader
import java.io.InputStreamReader
import java.util.*

fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))
    val n : Int = br.readLine().toInt()
    val map = TreeMap<String, Int>()
    for (i in 0 until n){
        val pile : String = br.readLine()
        val path = pile.split(".")[1]

        if (path in map){
            map[path] = map[path]!! + 1
        }else{
            map[path] = 1
        }
    }

    for ((key, value) in map){
        println("$key $value")
    }

}

github