프로그래머스 코딩테스트 연습 입문단계 '피자 나눠 먹기 (1)' 문제입니다.
https://school.programmers.co.kr/learn/courses/30/lessons/120814
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
❓문제 설명
머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.
문제 이해가 잘 되지 않는다면 아래에 입출력 예시표를 참고하세요!!
⚠️ 제한사항 및 입출력 예시표
- 1 ≤ n ≤ 100
n (입력) | result (출력) |
7 | 1 |
1 | 1 |
15 | 3 |
✏️ 직접 구현한 코드
class Solution {
public int solution(int n) {
int answer;
if(n % 7 == 0) {
answer = n/7;
} else {
answer = (n/7) +1;
}
return answer;
}
}
🗣️ 코드 설명
- if문을 이용해 7로 나뉘어 떨어지면, n을 7로 나눈 몫을 answer에 넣고 7로 나누어지지 않거나 7로 나눴을 때 나머지가 남으면 n을 7로 나눈 몫에 1을 더한 값을 answer에 넣도록 했습니다.
- 마지막으로 answer을 리턴했습니다.
🔥다른 사람의 코드
class Solution {
public int solution(int n) {
int answer = (int)Math.ceil((double)n/7);
return answer;
}
}
소수점 자리가 0이 아니라면 무조건 올림을 하는 Math.ceil 메서드를 이용하여 풀었네요.
다시 말해, 나누어 떨어지지 않는다면 1이 더해지는 것이라고도 할 수 있죠!!
저는 if문을 이용해서 1을 더했지만 이 분은 메서드를 이용해 더 간단히 풀었습니다.
앞으로 더 다양한 메서드를 공부해봐야겠습니다!! ᕦ( ᐛ )ᕡ
'코딩테스트 회고록 > 코테_Java' 카테고리의 다른 글
[JAVA] 학교 수행평가 코딩테스트 - 두 배열 병합과 오름차순 정렬 후 중복없이 출력하기 (0) | 2023.02.16 |
---|---|
[JAVA] 프로그래머스 - 짝수 홀수 개수 (0) | 2023.02.16 |
[JAVA] 프로그래머스 - 배열의 유사도 (0) | 2023.02.15 |
[JAVA] 프로그래머스 - 배열 뒤집기 (0) | 2023.02.15 |
[JAVA] 프로그래머스 - 양꼬치 (0) | 2023.02.14 |