From b2b49e17d752fac6548fc7df43127f930ad07a0e Mon Sep 17 00:00:00 2001 From: Abidemi Omosanya <89324079+Bii-sama@users.noreply.github.com> Date: Mon, 30 Jan 2023 02:06:47 +0100 Subject: [PATCH 1/4] semi-solved --- src/transpose/index.js | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/transpose/index.js b/src/transpose/index.js index adec201..69dd193 100644 --- a/src/transpose/index.js +++ b/src/transpose/index.js @@ -4,6 +4,27 @@ * @param {number[]} array The array to transpose * @returns {number[]} The transposed array */ -function transpose(array) {} +function transpose(array) { + + let newArr = [] + for (let i = 0; i < array.length; i++) { + for (let j = 0; j < array[0].length; j++) { + newArr.push(array[i][j]) + + } + + } +return newArr +} + +let a = [ + [9, 1, 2, 3], + [4, 5, 6, 7], + [8, 9, 10, 7], + [1, 3, 1, 5], + ] + + + console.log(transpose(a)) module.exports = transpose; From 9d1265fc67959da83674934f52f0152d12558446 Mon Sep 17 00:00:00 2001 From: Abidemi Omosanya <89324079+Bii-sama@users.noreply.github.com> Date: Mon, 30 Jan 2023 02:08:03 +0100 Subject: [PATCH 2/4] semi-solved --- src/transpose/index.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/transpose/index.js b/src/transpose/index.js index 69dd193..a0c8252 100644 --- a/src/transpose/index.js +++ b/src/transpose/index.js @@ -7,14 +7,23 @@ function transpose(array) { let newArr = [] + let length = '' + let length2 = '' for (let i = 0; i < array.length; i++) { - for (let j = 0; j < array[0].length; j++) { - newArr.push(array[i][j]) + length = array[i] + for (let j = 0; j < array[i].length ; j++) { + length2 = array[j] + newArr.push(length2[i]) } } -return newArr + let size = length.length; let arrayOfArrays = []; +for (var k=0; k Date: Mon, 30 Jan 2023 13:00:20 +0100 Subject: [PATCH 3/4] brackets --- src/brackets/index.js | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/brackets/index.js b/src/brackets/index.js index 96b6766..9da4916 100644 --- a/src/brackets/index.js +++ b/src/brackets/index.js @@ -4,6 +4,26 @@ * @param {string} str The string of brackets. * @returns {"valid" | "invalid"} Whether or not the string is valid. */ -function isValid(str) {} +function isValid(str) { + let brackets = "[]{}()<>" + let stack = [] + for(let bracket of str) { + let bracketsIndex = brackets.indexOf(bracket) + if (bracketsIndex === -1){ + continue +} +if(bracketsIndex % 2 === 0) { + stack.push(bracketsIndex + 1) + } else { + if(stack.pop() !== bracketsIndex) { + return false; + } + } +} +return stack.length === 0 ? "valid" : "invalid"; +} module.exports = isValid; + + + From 9ef7620e85c90519b590b82a737a6d0dc0fc6509 Mon Sep 17 00:00:00 2001 From: Abidemi Omosanya <89324079+Bii-sama@users.noreply.github.com> Date: Mon, 30 Jan 2023 13:55:08 +0100 Subject: [PATCH 4/4] roman numerals --- src/roman-numerals/index.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/roman-numerals/index.js b/src/roman-numerals/index.js index 38afb19..6955d34 100644 --- a/src/roman-numerals/index.js +++ b/src/roman-numerals/index.js @@ -4,6 +4,23 @@ * @param {string} roman The all-caps Roman numeral between 1 and 3999 (inclusive). * @returns {number} The decimal equivalent. */ -function romanToDecimal(roman) {} +function romanToDecimal(roman) { + const romanSymbols = { + "I": 1, + "V": 5, + "X": 10, + "L": 50, + "C": 100, + "D": 500, + "M": 1000 } + let answer = 0; + for (let i = 0; i < roman.length; i++){ + const now = romanSymbols[roman[i]]; + const later = romanSymbols[roman[i + 1]]; + if (now < later){ + answer += later - now; + i++; + } else answer += now } return answer +} module.exports = romanToDecimal;