dhows

Untitled

Mar 25th, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.70 KB | None | 0 0
  1. let candies = [33, 20, 12,12, 19, 29]
  2. let threshold = 47;
  3.  
  4. console.log(sugarHigh(candies, threshold))
  5.  
  6. function sugarHigh(candies, threshold){
  7. var dict = [] //създавам речник
  8. //в долния цикъл добавям сладките в речника, като слагам на кей индекса им,
  9. //а на value захарта
  10. for(let i =0; i < candies.length; i++){
  11. dict.push({
  12. key: i,
  13. value: candies[i]
  14. })
  15. }
  16.  
  17. candies.sort() //сортирам масива със сладките
  18.  
  19. let indices = [] //създавам си масив за индексите на сладките, които ще ядем
  20. let sumOfSugar = 0 //захарта, която ще изядем
  21. for(let i = 0; i < candies.length; i++){
  22. if(sumOfSugar + candies[i] <= threshold){ //проверяваме дали можем да изядем още една сладка
  23. sumOfSugar += candies[i] //ако можем добавяме захарта й към натрупаната захар от предните сладки
  24. indices.push(Object.keys(dict).find(key => dict[key].value === candies[i])) //търсим тази сладка в речника и й взимаме индекса от първия масив, който ни подават
  25. }
  26. }
  27.  
  28. //тука проверяваме дали има 2 еднакви сладки и ако има на втората й качваме индекса с 1
  29. for(let i = 0; i < indices.length; i++){
  30. if(indices[i] === indices[i+1]){
  31. indices[i+1]++;
  32. }
  33. }
  34.  
  35. return indices
  36. }
Advertisement
Add Comment
Please, Sign In to add comment