문제: 코딩테스트 연습 - 피자 나눠 먹기 (2) | 프로그래머스 스쿨 (programmers.co.kr)
문제설명
머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예
n | result |
6 | 1 |
10 | 5 |
4 | 2 |
나의 문제 풀이
class Solution {
public int solution(int n) {
int answer = 0;
//최소공배수
for (int i = 1; i <= n; i++) {
if (i * 6 % n == 0) {
answer = i;
break;
}
}
return answer;
}
}
다른 사람의 문제풀이
// 첫 번째 코드 : GCD, LCM
class Solution {
public int GCD(int num1, int num2) {
if (num1 % num2 == 0)
return num2;
return GCD(num2, num1 % num2);
}
public int LCM(int num1, int num2) {
return num1 * num2 / GCD(num1, num2);
}
public int solution(int n) {
return LCM(n, 6) / 6;
}
}
// 두 번째 코드 : 무한루프 이용
class Solution {
public int solution(int n) {
int answer = 1;
while(true){
if(6 * answer % n == 0) break;
answer++;
}
return answer;
}
}
다양한 방법이 있는데 왜 아직 나는 한가지로 밖에 생각이 안날까ㅜ 더 열심히 해야겠다..
'코딩테스트 연습 > 프로그래머스 LV.0' 카테고리의 다른 글
[프로그래머스] Lv.0 최빈값 구하기 - 자바(Java) (0) | 2024.03.21 |
---|---|
[프로그래머스] Lv.0 짝수는 싫어요 - 자바(Java) (0) | 2024.03.20 |
[프로그래머스] Lv.0 옷가게 할인 받기 - 자바(Java) (0) | 2024.03.18 |
[프로그래머스] Lv.0 직각삼각형 출력하기 - 자바(Java) (0) | 2024.03.17 |
[프로그래머스] Lv.0 짝수 홀수 개수 - 자바(Java) (0) | 2024.03.16 |