-
[Programmers] Lv1.์ฒด์ก๋ณต(kotlin)SW Test/Programmers 2022. 6. 2. 00:04๋ฐ์ํ
๋ฌธ์
์์
ํ์ด
1. ์ฒด์ก๋ณต์ ๋๋๋นํ๋ ํ์(lost)์ ์ฌ๋ฒ์ ์ท์ด ์๋ ํ์(reserve) ์์ ๊ฐ์ ๋ฒํธ๋ ์ ๊ฑฐํฉ๋๋ค.(๋ง์ง๋ง ์ ํ์ฌํญ)
2. ๊ฐ์ ๋ฒํธ๊ฐ ์ ๊ฑฐ๋ reallost ๋ฆฌ์คํธ์ realreserve ๋ฆฌ์คํธ๋ฅผ ๋ฒํธ๊ฐ ํฐ ํฌ๊ธฐ ์์ผ๋ก ์ ๋ ฌํ๊ณ reallost ๋ฆฌ์คํธ๋ ์ฌ๋ฒ์ ์ท์ด ์์ ๊ฒฝ์ฐ ๋ฒํธ ์ญ์ ๊ฐ ๊ฐ๋ฅํ๋๋ก mutableList๋ก ๋ณ๊ฒฝํฉ๋๋ค.
3. realreserve ๋ฆฌ์คํธ๋ฅผ ํ์ํ์ฌ ๋๋๋นํ ํ์์๊ฒ ๋น๋ ค์ค ์ ์๋์ง ์ฌ๋ถ๋ฅผ ํ์ ํ ํ ๋น๋ ค์ค ์ ์์ผ๋ฉด reallost์์ ํ์์ ๋ฒํธ๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
class Solution { fun solution(n: Int, lost: IntArray, reserve: IntArray): Int { var answer = n val reallost = lost.filter{ n -> reserve.count{ it == n} == 0 }.sortedDescending().toMutableList() val realreserve = reserve.filter{ n -> lost.count{ it == n} == 0}.sortedDescending() realreserve.forEach{ num -> if(num == n){ if(reallost.count{ num-1 == it} > 0){ reallost.remove(num-1) } }else if(num == 1){ if(reallost.count{ num+1 == it} > 0){ reallost.remove(num+1) } }else{ if(reallost.count{ num+1 == it } > 0){ reallost.remove(num+1) }else{ if(reallost.count{ num-1 == it} > 0){ reallost.remove(num-1) } } } } return answer-reallost.size } }
์ฐธ๊ณ
- ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ธ kotlin์ ํน์ฑ์ ๋ง๊ฒ ํจ์๋ฅผ ๋ง์ด ์ตํ์ ๐ฝ
- https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/count.html
๋ฐ์ํ'SW Test > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] Lv1. K๋ฒ์งธ ์(kotlin) (0) 2022.07.09 [Programmers] Lv1.๋ชจ์๊ณ ์ฌ(kotlin) (0) 2022.06.04 [Programmers] Lv1. 2019 KAKAO BLIND RECUITMENT ์คํจ์จ(kotlin) (0) 2022.05.26 [Programmers] Lv1.N^2 ๋ฐฐ์ด ์๋ฅด๊ธฐ(Kotlin) (0) 2021.11.15 [Programmers] Lv1. ์ต์์ง์ฌ๊ฐํ(Kotlin) (0) 2021.11.12