728x90
반응형
[프로그래머스] 코딩테스트 연습 -> 코딩테스트 입문 -> 피자 나눠 먹기(2)
https://school.programmers.co.kr/learn/courses/30/lessons/120815
해결 과정
피자 한 판은 6조각, 한사람이 먹는 피자의 개수를 i라고 하고 사람수는 n이므로,
6와 n의 최대공약수를 구한다. (gcd)
사람 수 n를 최대공약수인 gcd로 나눠주면 피자가 몇 판이어야하는지 알 수 있다.
소스 코드
class Solution {
public int solution(int n) {
int answer = 0;
int gcd = 0;
for(int i =1; i <=n; i++) {
if(6 % i == 0 && n % i == 0 ) {
gcd = i;
}
}
answer = n / gcd;
return answer;
}
}
(또 다른 답안)
class Solution {
public int solution(int n) {
int answer = 0;
int max = 0;
for (int i=1; i<=n; i++) {
if (n%i == 0 && 6%i == 0) {
max = i;
}
answer = (n * 6 / max) / 6 ;
}
return answer;
}
}
728x90
반응형
'JAVA > Programmers' 카테고리의 다른 글
JAVA 프로그래머스 [옷가게 할인 받기] 자바 Lv.0 (0) | 2023.05.26 |
---|---|
JAVA 프로그래머스 [피자 나눠 먹기(3)] 자바 Lv.0 (0) | 2023.05.25 |
JAVA 프로그래머스 [피자 나눠 먹기(1)] 자바 Lv.0 (0) | 2023.05.25 |
JAVA 프로그래머스 [배열의 평균값] 자바 Lv.0 (0) | 2023.05.25 |
JAVA 프로그래머스 [나머지 구하기] 자바 Lv.0 (0) | 2023.05.24 |
댓글