2023-03-25

 25 Mar 2023

Return a New Array where each Element is the Product of Other Elements

Taken from DailyCodingProblem:

Given an array of integers, return a new array such that each element at index i of the new array is the product of all the numbers in the original array except the one at i.

For example, if our input was [1, 2, 3, 4, 5], the expected output would be [120, 60, 40, 30, 24]. If our input was [3, 2, 1], the expected output would be [2, 3, 6].

This is the answer I came up with:

// typescript

const solution = (numbers: Array<number>): Array<number> => {
  let result = []
  for (let num of numbers) {
    let tempStart = numbers.slice(0, num)
    tempStart.pop()
    let tempEnd = numbers.slice(num, numbers.length)
    let tempArray = tempStart.concat(tempEnd)
    let tempResult = tempArray.reduce((product, x) => product * x)
    result.push(tempResult)
  }
  return result
}

Testing

Solution tested in REPL:

https://www.typescriptlang.org/play?#code/MYewdgzgLgBBIBsCuUCW4YF4YAoxIFsAjAUwCcIAuGAQTLIEMBPAHn2PID4BKaux1u1JlOWUQG8AsACgYMBCVhkSEJAljYA2gF0ZcgGYgyuBbHYwQ+mEPIRuMKbLnzFMKCQIAHAMpQGZDWtCYQgAOggEVGASHAAGABoggm49Z3cvX38oUM8QTxwUpzlTNw9PAFEwABMsJJDwyOi8QkSbClCFMABzKAALQucXWHTPfmZakcyA0NAwYAYoHBHKqoHnEpGAJRU1QJGxplDlKqQmnE8yEBPgKESAD3tMUQur09gAKhgH1LllVXUckgIL0lmVtv8oGsAL6pZRQJBkMAwP67GQw6QyEptCC1TQARniACZ4gBmeIAFniAFZdBjpLN4AoOiAujhUoyUOgwM0OBRCvYAPQCmD4wkJGAANnF5PFJPFhPJtKAA

Webmentions & Comments

Copyright © Paramdeo Singh · Built with Jekyll in 🇬🇾 · All Rights Reserved

[ this node is permanently morphing last updated on 28 May 2023 ]

Paramdeo Singh Guyana

Generalist. Edgerunner. Riding the wave of consciousness in this treacherous mortal sea.

Technology Design Strategy Literature Personal Blogs
Search Site

Results are from Blog, Link Dumps, and #99Problems