머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
import math
def solution(n):
answer = (n * 6) // math.gcd(n, 6) // 6
return answer
n명이 모두 같은 수로 6개가 한 판인 피자를 먹는데 조건을 만족하기 위해서는 총 인원 수와 6의 최소공배수만큼의 피자 조각을 먹으면 된다.
처음에는 math에서 최소공배수를 구하는 lcm()
함수를 사용했는데 이 함수가 꽤 최근에 생겼기 때문에 프로그래머스에서는 실행이 되지 않았다.
그래서 최대공약수를 구하는 gcd()
함수를 이용해 최소공배수를 구하고, 피자 판의 수를 구하기 위해 6으로 나눴다.
a,b의 최소공배수 = (a x b) / a,b의 최대공약수