프로그래머스 JAVA 코딩테스트 피자 나눠 먹기 (2)
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges
문제설명 : 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
테이스케이스 추가 :
코드 :
class Solution {
public int solution(int n) {
int answer = 0;
if(n%6 == 0){
answer = n/6;
}else{
int nOrigin = n ;
int b =6;
while (b != 0) {
int temp = b;
b = n % b;
n = temp;
}
answer = 6/n*nOrigin/6;
}
return answer;
}
}
코드 수정 전 : ( 통과됨, 눈물겨운 과정... )
class Solution {
public int solution(int n) {
//n = 16;
int answer = 0;
if(n%6 == 0){
answer = n/6;
//}else if(n > 6){
}else{
int nOrigin = n ;
int b =6;
//System.out.println("@");
while (b != 0) {
int temp = b;
//System.out.println("n :: "+n);
b = n % b;
//System.out.println("b = n % b : "+b);
n = temp;
}
// System.out.println(n);
answer = 6/n*nOrigin/6;
//System.out.println("a is "+answer);
//int gcd = 0;
//while ( b > 0) {
//gcd = n % b;
//n = b;
//b = gcd;
//System.out.println("n : "+n+" ,b :"+b+" ,gcd:"+gcd);
//}
//answer = nOrigin/n;
// }else if(n < 6){
// System.out.println("작을때");
// //answer = (6-n);
// answer = 6*n/6;
// }
// } else {
// answer = n*6/6;
}
return answer;
}
}
728x90
300x250