# 문제
문제 설명
머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- box의 길이는 3입니다.
- box[0] = 상자의 가로 길이
- box[1] = 상자의 세로 길이
- box[2] = 상자의 높이 길이
- 1 ≤ box의 원소 ≤ 100
- 1 ≤ n ≤ 50
- n ≤ box의 원소
- 주사위는 상자와 평행하게 넣습니다.
#코드
def solution(box, n):
# result는 큐브의 총 개수를 저장할 변수, 처음엔 1로 시작
result = 1
# box 리스트의 각 차원을 순회하며
for curr in box:
# 각 차원의 크기를 큐브의 한 변 길이 n으로 나눈 몫을 계산하여 result에 곱함
result *= curr // n
# 계산된 총 큐브 개수를 반환
return result
#상세설명
result *= curr // n의 뜻:
- curr // n: 현재 차원의 크기(curr)를 큐브의 한 변 길이(n)로 나눈 몫을 계산하는 것입니다. 예를 들어, curr이 10이고, n이 2라면, 10 // 2 = 5가 됩니다. 즉, 해당 차원에 큐브가 5개 들어간다는 의미입니다.
- result *= curr // n: result에 현재 계산된 몫(curr // n)을 곱해서 그 값을 업데이트하는 것입니다. 처음에는 result가 1로 시작해서, 차원별로 들어가는 큐브 수를 계속 곱해 나가며 전체 박스에 들어갈 큐브의 수를 구하는 과정입니다.
728x90
'코딩스터디' 카테고리의 다른 글
[프로그래머스] 파이썬, 수 조작하기1 (0) | 2024.10.11 |
---|---|
[프로그래머스]인덱스 바꾸기 파이썬 (0) | 2024.09.23 |
[프로그래머스] 가위 바위 보 파이썬 (2) | 2024.09.09 |
[프로그래머스] n의 배수 고르기 파이썬 (2) | 2024.09.06 |
[프로그래머스] 가장 큰 수 찾기 파이썬 (0) | 2024.09.05 |