**Instructions:**

__Task__

Given an input of an array of digits, return the array with each digit incremented by its position in the array: the first digit will be incremented by 1, the second digit by 2, etc. Make sure to start counting your positions from 1 ( and not 0 ).

Your result can only contain single digit numbers, so if adding a digit with its position gives you a multiple-digit number, only the last digit of the number should be returned.

__Notes:__

return an empty array if your array is empty

arrays will only contain numbers so don't worry about checking that

__Examples:__

[1, 2, 3] --> [2, 4, 6] # [1+1, 2+2, 3+3]

[4, 6, 9, 1, 3] --> [5, 8, 2, 5, 8] # [4+1, 6+2, 9+3, 1+4, 3+5]

# 9+3 = 12 --> 2

**My solution:**

```
function incrementer(nums) {
if(nums == []) return[]
return nums.map((n,i)=> (i + n + 1)%10)
}
```

**Explanation**

I started with a conditional, if the array is empty it'll return an empty array, if not it'll return the result, for the result I mapped the nums input, taking each number and its index as parameters, then I summed the index + number + 1, I summed one because I have to start counting the postions from 1, so every index needs to be summed one, then to that result I used the % operator so it returns only the remainder of the division and I can get only the second digit of the result because it is divided by 10

Comment how would you solve this kata and why? ðŸ‘‡ðŸ¤”

## Top comments (0)