출처 : https://leetcode.com/problems/product-of-array-except-self/description/
접근법을 몰라서 풀지 못하였던 문제.
코드 :
class Solution:
def productExceptSelf(self, nums: List[int]) -> List[int]:
out = []
p = 1
for i in range(len(nums)) :
out.append(p)
p = p * nums[i]
print(out)
p = 1
for i in range(len(nums)-1,-1,-1) :
out[i] = out[i] * p
p = p * nums[i]
return out
아래와 같은 방식으로 prefix, suffix 곱셈을 수행해주면 자기 자신을 제외한 나머지 수들에 대한 곱을 구할 수 있다.