Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
03. Easter Shopping function easterShopping(input) { shopsArr = input.shift().split(" "); let commandsArr = input.slice(1); for (let i = 0; i < commandsArr.length; i++) { let currentAction = commandsArr[i].split(" "); let action = currentAction[0]; if (action.includes("Include")) { let newShop = currentAction[1]; shopsArr.push(newShop); } else if (action.includes("Visit")) { let numberOfShopsToRemove = Number(currentAction[2]); if (shopsArr.length >= numberOfShopsToRemove) { if (currentAction.includes("first")) { shopsArr.splice(0, numberOfShopsToRemove); } else if (currentAction.includes("last")) { for (let j = 0; j < numberOfShopsToRemove; j++) { shopsArr.pop(); } } } } else if (action.includes("Prefer")) { let indexOfFirstShop = Number(currentAction[1]); let indexOfSecondShop = Number(currentAction[2]); if (indexOfFirstShop >= 0 && indexOfFirstShop < shopsArr.length && indexOfSecondShop >= 0 && indexOfSecondShop < shopsArr.length) { let firstShop = shopsArr[indexOfFirstShop]; let secondShop = shopsArr[indexOfSecondShop]; shopsArr.splice(indexOfFirstShop, 1, secondShop); shopsArr.splice(indexOfSecondShop, 1, firstShop); } } else if (action.includes("Place")) { let indexToPlaceAfter = Number(currentAction[2]); let indexToPlaceAt = indexToPlaceAfter + 1; if (indexToPlaceAt >= 0 && indexToPlaceAt < shopsArr.length) { shopsArr.splice(indexToPlaceAt, 0, currentAction[1]); } } } console.log("Shops left:") console.log(shopsArr.join(" ")); }
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)