Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- vector<int> productExceptSelf(vector<int>& input) {
- int n=input.size();
- vector <int> ans(n,1);
- int temp=1;
- for(int i=0;i<n;i++){
- ans[i]=temp;
- temp*=input[i];
- }
- for(auto itr:ans) cout<<itr<<" ";
- cout<<endl;
- temp=1;
- for(int i=n-1;i>=0;i--){
- ans[i]*=temp;
- temp*=input[i];
- }
- return ans;
- }
- };
- #Python
- class Solution:
- def productExceptSelf(self, nums: List[int]) -> List[int]:
- zero=0
- mul=1
- for i in nums:
- if i==0:
- zero+=1
- else:
- mul=mul*i
- if zero==0:
- return [mul//i for i in nums]
- if zero==1:
- return [0 if i!=0 else mul for i in nums]
- else:
- return [0 for i in nums] #We can avoid using range(len(nums)) also
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement