728x90
import java.io.BufferedReader
import java.io.InputStreamReader
import java.util.*
class FashionKing {
private val hash = HashMap<String, Vector<String>>()
fun addDress(type: String, name: String) {
if (!hash.containsKey(type)) {
hash[type] = Vector()
}
hash[type]!!.add(name)
}
fun getDressNum(): Int {
return hash.keys.sumOf { hash[it]!!.size }
}
fun solve(): Int =
hash.keys
.map { hash[it]!!.size }
.fold(1) { acc: Int, kinds: Int -> acc.times(kinds + 1) }
.minus(1)
}
fun main(args: Array<String>) {
val br = BufferedReader(InputStreamReader(System.`in`))
repeat(br.readLine().trim().toInt()) {
val solver = FashionKing()
repeat(br.readLine().trim().toInt()) {
val (n, k) = br.readLine().trim().split(" ")
solver.addDress(k, n)
}
println(solver.solve())
}
}
'독서 > 알고리즘' 카테고리의 다른 글
백준 14567 선수과목 (0) | 2021.12.27 |
---|---|
백준 12915 대회 개최 (0) | 2021.12.25 |
백준 1946 신입 사원 (0) | 2021.12.25 |
백준 1652 누울 자리를 찾아라 (0) | 2021.12.24 |
백준 1013 Contact (0) | 2021.12.24 |