Skip to content

Instantly share code, notes, and snippets.

@jin-x
Created April 30, 2021 08:30
Show Gist options
  • Save jin-x/a3831576c3d7418456ff0f2113d67d0e to your computer and use it in GitHub Desktop.
Save jin-x/a3831576c3d7418456ff0f2113d67d0e to your computer and use it in GitHub Desktop.
@jinxonik / UniLecs #267
from random import randint
# Tricky multiplication
def tricky_mul(arr):
mul = 1
new_arr = []
for a in arr:
new_arr.append(mul)
mul *= a
mul = 1
i = len(arr)-1
for a in arr[::-1]:
new_arr[i] *= mul
mul *= a
i -= 1
return new_arr
if __name__ == '__main__':
arr = [1, 2, 3, 4]
new_arr = tricky_mul(arr)
print(f'Source array = {arr}')
print(f'New array = {new_arr}')
print()
arr = [-1, 1, 0, -3, 3]
new_arr = tricky_mul(arr)
print(f'Source array = {arr}')
print(f'New array = {new_arr}')
for n in (5, 20, 50):
arr = []
for i in range(n):
arr.append(randint(-20, 20))
new_arr = tricky_mul(arr)
print()
print(f'Source array = {arr}')
print(f'New array = {new_arr}')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment