Skip to content

Commit 492f4e9

Browse files
author
sangbeenmoon
committed
solved product-of-array-except-self.
1 parent b67d755 commit 492f4e9

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# idea
2+
# 1. left[i] = left[0] * left[1] * ... * left[i-1]
3+
# 2. right[i] = right[i+1] * right[i+2] * ... * right[n-1]
4+
# 3. answer[i] = left[i-1] * right[i+1]
5+
6+
# time : O(n)
7+
# space : O(n)
8+
9+
class Solution:
10+
def productExceptSelf(self, nums: List[int]) -> List[int]:
11+
left = [1] * len(nums)
12+
left[0] = nums[0]
13+
for i in range(1, len(nums)):
14+
left[i] = left[i-1] * nums[i]
15+
16+
right = [1] * len(nums)
17+
right[len(nums) - 1] = nums[len(nums) - 1]
18+
for i in range(len(nums) - 2, 0, -1):
19+
right[i] = right[i+1] * nums[i]
20+
21+
answer = []
22+
answer.append(right[1])
23+
for i in range(1, len(nums) - 1):
24+
answer.append(left[i-1] * right[i+1])
25+
answer.append(left[len(nums) - 2])
26+
return answer

0 commit comments

Comments
 (0)