프로그래머스
햄버거 만들기
끝까지 처음처럼
2022. 11. 11. 16:16
728x90
class Solution {
fun solution(ingredient: IntArray): Int {
var answer: Int = 0
var temp = ingredient.toMutableList()
var check = 0
while(check+3 <= temp.size){
if(temp[check] == 1 && temp[check+1] == 2 && temp[check+2] == 3 && temp[check+3] == 1){
answer++
temp.removeAt(check+3)
temp.removeAt(check+2)
temp.removeAt(check+1)
temp.removeAt(check)
if(check >= 3) {
check -= 3
} else {
check = 0
}
} else {
check++
}
}
return answer
}
}
해당 문제는 구현하기 쉽지만, 반례를 잘 생각해야 통과할 수 있는 문제였습니다.
해당 코드를 반례를 생각하지 못하고 몇번이나 작성하며, 반례가 떠올라 모든 케이스를 통과 할 수 있었습니다.
상기 코드는 현재 저의 실력으로 작성하였으며, 최적의 코드가 아님을 말씀드립니다.