Menu
CoddyTech

Product of Array Except Self

보통누적 합python iconjava iconcpp iconc iconjs icon+10

정수 배열 nums가 주어집니다. 길이가 같은 배열 answer를 반환하세요. 여기서 answer[i]는 인덱스 i에 있는 요소를 제외한 nums의 모든 요소의 곱입니다. 나눗셈을 사용하지 않고 O(n) 시간에 수행하세요.

함수

productExceptSelf(nums: integer-array) → integer-array
numsinteger-array
두 개 이상의 요소로 이루어진 정수 배열
반환값integer-array
인덱스 i의 값이 nums[i]를 제외한 모든 요소의 곱인 배열

제약 조건

  • 2 ≤ nums.length ≤ 104
  • -30 ≤ nums[i] ≤ 30
  • 0이 아닌 nums의 모든 값의 곱은 32비트 부호 있는 정수에 들어가므로, 계산 과정에서 만들어지는 모든 곱도 들어갑니다.

예제

입력
nums = [2, 3, 4, 5]
출력
[60, 40, 30, 24]
설명
2를 제외하면 3 × 4 × 5 = 60이 되고, 5를 제외하면 2 × 3 × 4 = 24가 됩니다. 가운데 두 경우도 같은 방식으로 계산합니다. 2 × 4 × 5 = 40이고 2 × 3 × 5 = 30입니다.

lock icon제출 시 숨은 테스트 +14개

challenge icon

후속 질문

반환하는 배열을 제외하고 추가 공간을 O(1)만 사용할 수 있나요?

코드 초기화
def productExceptSelf(nums):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

nums = [2, 3, 4, 5]

기대값

[60, 40, 30, 24]