반응형 Coding Test/프로그래머스 코딩테스트 입문31 Python 피자 나눠 먹기 (2) [코딩테스트 입문 - Day4] 문제 구현 n과 6의 최대공약수를 구하여 n을 6으로 나눈값을 리턴한다. 코드 import math def solution(n): return (n)/math.gcd(n,6) 최대공약수 구현을 보려면 다음 글을 확인하면 된다. 2023.01.13 - [Coding Test/프로그래머스 코딩테스트 입문] - Python 분수의 덧셈 [코딩테스트 입문 - Day2] 다른 풀이 def solution(n): def gcd(a, b): while b > 0: a, b = b, a%b return a return n // gcd(n, 6) 최대 공약수 함수를 따로 구현하면 이렇게 된다. 2023. 1. 17. Python 피자 나눠 먹기 (3) [코딩테스트 입문 - Day4] 문제 구현 (n-1)을 slice로 나눈 몫에 +1을 해서 리턴하면 된다. 코드 def solution(slice, n): return (n-1)//slice+1 다른 풀이 다른 괜찮은 풀이는 없어 보인다 2023. 1. 17. Python 피자 나눠 먹기 (1) [코딩테스트 입문 - Day4] 문제 구현 7의배수가 아니라면 n을 7로 나눈 몫의 +1을 리턴하고 7의 배수라면 n을 7로 나눈 몫을 리턴한다. 코드 def solution(n): return n//7+1 if n%7 else n//7 다른 풀이 def solution(n): return (n - 1) // 7 + 1 조금 더 수학적으로 사고를 하면 이렇게도 가능하다 2023. 1. 17. Python 중앙값 구하기 [코딩테스트 입문 - Day3] 문제 구현 sorted를 이용해 정렬 후 중간 index가 가지고 있는 값을 얻어오면 된다. // 연산자는 나머지를 버리고 몫을 가져오기 때문에 //2로 중간 인덱스를 얻을 수 있다. 코드 def solution(array): return sorted(array)[len(array)//2] 다른 풀이 풀어서 쓰면 다음과 같다. def solution(array): array = sorted(array) length = len(array)//2 return array[length] 2023. 1. 16. 이전 1 2 3 4 5 6 7 8 다음 반응형