[アルゴリズム]自身以外の配列の積


非自己配列の積

説明する


問題を見ると、まず整数に配列全体を乗じて、各配列の値を別々に格納すればいいと思いますが、問題の制約条件に区切り記号を書かないでください.

本を解く

def productExceptSelf(nums: List[int]) -> List[int]:
    out = []
    p = 1

    for i in range(0, len(nums)):
        out.append(p)
        p = p * nums[i]

    p = 1
    for i in range(len(nums)-1, -1, -1):
        out[i] = out[i] * p
        p = p * nums[i]

    return out