Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.41 KB | None | 0 0
  1. function solve(input) {
  2. let itemsArray = input.shift().split('|');
  3. let stolenItems = [];
  4.  
  5. for (i = 0; i < input.length; i++) {
  6. let currentCommandArray = input[i].split(' ');
  7. let command = currentCommandArray.shift();
  8.  
  9. if (command === 'Loot') {
  10. for (let j = 0; j < currentCommandArray.length; j++){
  11. let current = currentCommandArray[j];
  12. if (itemsArray.includes(current)) {
  13.  
  14. }
  15. else {
  16. itemsArray.unshift(current);
  17. }
  18. }
  19.  
  20. } else if (command === 'Drop'){
  21.  
  22. let removeIndex = Number(currentCommandArray.shift());
  23.  
  24. if ( removeIndex < 0 || removeIndex >= itemsArray.length){
  25.  
  26. } else {
  27. let addAtTheEnd = itemsArray[removeIndex];
  28.  
  29. delete itemsArray[removeIndex];
  30. itemsArray.push(addAtTheEnd);
  31. itemsArray = itemsArray.filter(function (el) {
  32. return el != null;
  33. });
  34. }
  35.  
  36. } else if (command === 'Steal'){
  37. let stealAmount = Number(currentCommandArray.shift());
  38. if (stealAmount > itemsArray.length){
  39. stolenItems.push(itemsArray.slice());
  40. itemsArray = [];
  41. } else if (stealAmount === itemsArray.length){
  42. let sl = itemsArray.length - stealAmount;
  43. stolenItems.push(itemsArray.slice(sl,itemsArray.length));
  44. itemsArray = [];
  45. }
  46. else {
  47. let sl = itemsArray.length - stealAmount;
  48. stolenItems.push(itemsArray.slice(sl,itemsArray.length));
  49. itemsArray = itemsArray.slice(0,stealAmount + 2);
  50. }
  51. console.log(stolenItems[0].join(', '));
  52.  
  53.  
  54. } else if (command === 'Yohoho!'){
  55. break;
  56. }
  57. }
  58.  
  59.  
  60. if (itemsArray[0] !== undefined) {
  61.  
  62.  
  63. var sum = 0;
  64. for (let index = 0; index < itemsArray.length; index++) {
  65. let item = itemsArray[index];
  66. let length = item.length;
  67. sum += length;
  68. }
  69. let average = sum / itemsArray.length;
  70. console.log(`Average treasure gain: ${average.toFixed(2)} pirate credits.`);
  71. } else {
  72. console.log('Failed treasure hunt.');
  73.  
  74. }
  75.  
  76.  
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement