trust배열의 2번쨰값이 n만큼 있는사람이 있고,해당번호가 한번도 신뢰건적이없으면 해당번호 리턴,없으면 -1리턴
n만큼 신뢰받은애들을 뽑아서,그중에서 신뢰건적이 없는애들을 찾자
정답
class Solution {
fun findJudge(n: Int, trust: Array<IntArray>): Int {
if (n==1){
return 1
}
val trustMap = hashMapOf<Int, Int>()
val giveTrustSet=mutableSetOf<Int>()
for (i in trust){
trustMap[i[1]]=trustMap[i[1]]?.plus(1)?:1
giveTrustSet.add(i[0])
}
val candiJudgeList= mutableListOf<Int>()
for ((key,value) in trustMap){
if (value==n-1){
candiJudgeList.add(key)
}
}
println(candiJudgeList)
for (i in candiJudgeList){
if (!giveTrustSet.contains(i)){
return i
}
}
return -1
}
}
'알고리즘' 카테고리의 다른 글
릿코드 2864. Maximum Odd Binary Number 코틀린 (0) | 2024.03.01 |
---|---|
릿코드 100. Same Tree 코틀린 (0) | 2024.02.26 |
릿코드 201. Bitwise AND of Numbers Range 코틀린 (0) | 2024.02.21 |
릿코드 268. Missing Number 코틀린 (0) | 2024.02.20 |
릿코드 231. Power of Two 코틀린 (0) | 2024.02.19 |