Daily LeetCode Challenge - 1207. Unique Number of Occurrences

Min Young Kim·2022년 11월 30일
0

algorithm

목록 보기
36/198

Problem From.
https://leetcode.com/problems/unique-number-of-occurrences/

오늘 문제는 주어진 리스트에서 각각의 숫자에 대해, 갯수가 같으면 false 모두 갯수가 다르면 true 를 반환하는 문제였다.

Map 을 사용하여 key 에 각각의 숫자, value 에 각각의 갯수를 넣은뒤
마지막에 map 의 values 와 unique 한 map 의 value 의 크기가 같으면 true 다르면 false 를 반환해주었다.

class Solution {
    fun uniqueOccurrences(arr: IntArray): Boolean {
        
        val map = mutableMapOf<Int, Int>()
        
        arr.forEach { num ->
            map.put(num, map.getOrDefault(num, 0) + 1)
        }
        
        return map.values.size == map.values.toSet().size
    }
}

위 풀이의 시간복잡도는 O(n) 이 된다.

profile
길을 찾는 개발자

0개의 댓글