코틀린/코딩테스트

코딩테스트 [피자 나눠먹기(1)]

정혜현 2024. 6. 11. 09:31

문제

머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.

https://school.programmers.co.kr/learn/courses/30/lessons/120814

 


 

풀이

1. 접근

1.1 관찰

피자 한 판에 일곱조각이다. 1 : 7의 비율. 사람이 n명일 때 피자 x판을 구해야한다. 모든 사람이 한 조각 이상 먹어야한다.  n을 7로 나누고 나머지가 없으면 몫을, 나머지가 있다면 몫+1이다.

 

 

 

 

 

2. 시행착오

2.1 시도

  • 가설 : 조건문when으로 n을 7로 나눈 나머지가 0이 아니면 n을 7로 나눈 값에 1을 더해주고, 0이면 n을 7로 나눈 값을 리턴한다.  
class Solution {
    fun solution(n: Int): Int {
        var answer: Int = 0
            if (n%7 != 0) return n/7+1
            else return n/7
        return answer
    }
}
  • 검증 : 성공

 

한번에 성공해서 줄여보기만 했다.

class Solution {
    fun solution(n: Int): Int {
        return if (n%7 != 0) return n/7+1
        else n/7}
}

 

 

 


회고

코드를 짜는 건 쉬웠지만 해결방법을 설계하는데 시간이 걸렸다. 너무 복잡하게 생각하지 말자.