해시
-
해시_프로그래머스_위장알고리즘/알고리즘 문제풀이 2021. 7. 14. 16:52
각 의상 카테고리 + 1 을 하고 (해당 카테고리를 착용하지 않는 경우) 각 의상 카테고리를 곱하여 경우의 수를 구한 뒤 경우의 수 - 1 을 하여 결과를 도출 (모두 입지 않는 경우) 각 의상 카테고리를 어떻게 구해 낼 까 고민이었음. 처음에는 clothes.map하여 의상분류별로 2중배열을 만들어 각 배열의count를 곱할까 했는데, dictionary key를 사용하는 편이 쉬울 것이라 생각하여 이와 같이 구현함. import Foundation func solution(_ clothes:[[String]]) -> Int { var dic:[String:Int] = [:] var sol = 1 clothes.enumerated().makeIterator().forEach({ if dic[$0.ele..
-
해시_LeetCode_N-Repeated Element in Size 2N Array알고리즘/알고리즘 문제풀이 2021. 7. 14. 16:07
해시 문제라서 Dictionary에 nums의 각 value들을 key로 사용해서, key의 value로 몇번 나왔는지 분류하려했다. (이게맞나..?) Ex) [1,2,3,3] -> [1:1, 2:1, 3:2] 그런데.. 다른 방법이 생각나서 아래와 같이 탐색을 통해 찾아냈다.... func repeatedNTimes(_ nums: [Int]) -> Int { let repeatCount = nums.count / 2 var array = nums.sorted() var counter = 1 var sol = 0 for index in 0..