Stack Overflow Asked by stephen1993 on November 7, 2020

**I am doing the following problem:**

Given the array candies and the integer extraCandies, where candies[i]

represents the number of candies that the ith kid has.For each kid check if there is a way to distribute extraCandies among

the kids such that he or she can have the greatest number of candies

among them. Notice that multiple kids can have the greatest number of

candies.Example 1:

Input: candies = [2,3,5,1,3], extraCandies = 3 Output:

[true,true,true,false,true] Explanation: Kid 1 has 2 candies and if

he or she receives all extra candies (3) will have 5 candies — the

greatest number of candies among the kids. Kid 2 has 3 candies and if

he or she receives at least 2 extra candies will have the greatest

number of candies among the kids. Kid 3 has 5 candies and this is

already the greatest number of candies among the kids. Kid 4 has 1

candy and even if he or she receives all extra candies will only have

4 candies. Kid 5 has 3 candies and if he or she receives at least 2

extra candies will have the greatest number of candies among the kids.

Example 2:Input: candies = [4,2,1,1,2], extraCandies = 1 Output:

[true,false,false,false,false] Explanation: There is only 1 extra

candy, therefore only kid 1 will have the greatest number of candies

among the kids regardless of who takes the extra candy. Example 3:Input: candies = [12,1,12], extraCandies = 10 Output:

[true,false,true]Constraints:

2 <= candies.length <= 100 1 <= candies[i] <= 100 1 <= extraCandies <=

50

here is my code and below my code is the error I am getting but it seems right?

```
const kidsWithCandies = (candies, extraCandies) => {
let candiesTwo = [...candies]
candiesTwo = candiesTwo.sort()
let arr = []
let highestNum = candiesTwo[candiesTwo.length -1]
for(let i = 0; i < candies.length; i++) {
if(candies[i] + extraCandies >= highestNum) {
arr.push(true)
} else {
arr.push(false)
}
}
return arr
}
```

**I am getting**

```
71 / 103 test cases passed.
Status: Wrong Answer
Submitted: 3 minutes ago
Input:
[1,10,10,3]
1
Output:
[false,true,true,true]
Expected:
[false,true,true,false]
```

Use a compare function to sort numbers or they will be in alpha order. By default, the sort() method sorts the values as strings in alphabetical and ascending order.

Simple example

```
const candies = [4, 11, 22, 2, 1];
console.log('No compare function:', JSON.stringify([...candies].sort()))
candies.sort((a, b) => a - b);
console.log('With compare function:', JSON.stringify(candies))
```

Correct answer by charlietfl on November 7, 2020

If we'd use `sort`

, the time complexity would be an order of `N Log N`

. Here is an `O(N)`

solution:

```
const kidsWithCandies = (candies, extraCandies) => {
let maxCandies = 0;
const greatest = [];
for (const candy of candies) {
(candy > maxCandies) && (maxCandies = candy);
}
for (let index = 0; index < candies.length; ++index) {
greatest.push(candies[index] + extraCandies >= maxCandies);
}
return greatest;
};
```

Answered by Emma on November 7, 2020

By default sort method sorts items alphabetically. You should update from

```
candiesTwo = candiesTwo.sort()
```

to

```
candiesTwo.sort((a, b) => a-b);
```

for numerical sort.

Answered by SoftDev on November 7, 2020

Get help from others!

Recent Questions

- How can I transform graph image into a tikzpicture LaTeX code?
- How Do I Get The Ifruit App Off Of Gta 5 / Grand Theft Auto 5
- Iv’e designed a space elevator using a series of lasers. do you know anybody i could submit the designs too that could manufacture the concept and put it to use
- Need help finding a book. Female OP protagonist, magic
- Why is the WWF pending games (“Your turn”) area replaced w/ a column of “Bonus & Reward”gift boxes?

Recent Answers

- Joshua Engel on Why fry rice before boiling?
- haakon.io on Why fry rice before boiling?
- Peter Machado on Why fry rice before boiling?
- Lex on Does Google Analytics track 404 page responses as valid page views?
- Jon Church on Why fry rice before boiling?

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP