SW Test/Programmers
[Programmers] Lv1. ๋ง์น ํ๊ธฐ(Kotlin)
An effort will never betray ๐
2023. 5. 3. 00:09
๋ฐ์ํ
๋ฌธ์
์์
ํ์ด
- n ๊ฐ์ ํฌ๊ธฐ ๋ฐฐ์ด์ ๋ง๋ ํ section์์ ๊ฐ๋ฆฌํค๋ ์ธ๋ฑ์ค์๋ true๋ก ํ๊ธฐํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ section์ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ์์ํ์ฌ ํด๋น ์ธ๋ฑ์ค๊ฐ true๋ฉด ํ์ธํธ ์น ์ ๋ฌด์กฐ๊ฑด ํด์ผํ๋ answer ์ 1์ ๋ํฉ๋๋ค.
- ์ดํ ํ์ธํธ ์น ์ ํฌ๊ธฐ์ธ m ๋งํผ ์ธ๋ฑ์ค๋ฅผ ๋ํ ํ ํ๋์ฉ ๋ฐฐ์ด์ ํ์ธํฉ๋๋ค.
- ํด๋น ์ธ๋ฑ์ค๊ฐ false๋ฉด 1์ฉ ๋ํด ํ์ธํธ ์น ํด์ผ ํ๋ ๊ณณ์ ์ฐพ๊ณ n ๊น์ง ํ์ธํ์์ผ๋ฉด ์ข ๋ฃํฉ๋๋ค.
class Solution {
fun solution(n: Int, m: Int, section: IntArray): Int {
var answer: Int = 0
val arr = Array(n+1){false}
section.forEach{ arr[it] = true}
var idx = section.first()
while(idx <= n){
if(arr[idx] == true){
answer++
idx += m
}else{
idx++
}
}
return answer
}
}
์ฐธ๊ณ
- ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ธ kotlin์ ํน์ฑ์ ๋ง๊ฒ ํจ์๋ฅผ ๋ง์ด ์ตํ์ ๐ฝ
๋ฐ์ํ