728x90
수열과 구간 쿼리 4
class Solution {
fun solution(arr: IntArray, queries: Array<IntArray>): IntArray {
var answer: IntArray = arr
queries.forEach {
for(i in it[0] .. it[1]){
if (i % it[2] == 0) answer[i]++
}
}
return answer
}
}
배열 만들기 2
class Solution {
fun solution(l: Int, r: Int): IntArray {
var answer: IntArray = intArrayOf()
for (i in l .. r){
var temp = i.toString().toSet()
if ((temp.size == 2 && temp.contains('5') && temp.contains('0')) || (temp.size == 1 && temp.contains('5')) || i == 5)
answer = answer.plus(i)
}
if (answer.isEmpty())
answer = answer.plus(-1)
return answer
}
}
배열 만들기 2
class Solution {
fun solution(l: Int, r: Int): IntArray {
var answer: IntArray = intArrayOf()
for (i in l .. r){
var temp = i.toString().toSet()
if ((temp.size == 2 && temp.contains('5') && temp.contains('0')) || (temp.size == 1 && temp.contains('5')) || i == 5)
answer = answer.plus(i)
}
if (answer.isEmpty())
answer = answer.plus(-1)
return answer
}
}
카운트 업
class Solution {
fun solution(start: Int, end: Int): IntArray = (start .. end).toList().toIntArray()
}
콜라츠 수열 만들기
class Solution {
fun solution(n: Int): IntArray {
var num = n
var answer: IntArray = intArrayOf()
do {
answer = answer.plus(num)
if (num % 2 == 0){
num /= 2
}else{
num = num * 3 + 1
}
}while (num != 1)
return answer.plus(1)
}
}
배열 만들기 4
import java.util.Stack
class Solution {
fun solution(arr: IntArray): IntArray {
var stk : Stack<Int> = Stack()
var i = 0
while (i < arr.size) {
if (stk.isEmpty()){
stk.push(arr[i])
i++
}else{
if (stk.last() < arr[i]){
stk.push(arr[i])
i++
}else{
stk.pop()
}
}
}
return stk.toIntArray()
}
}
728x90