# array-increaser

Increase Array when last bit reach band, it it useful when solve N-Sum problem.

## Usage no npm install needed!

``````<script type="module">
import arrayIncreaser from 'https://cdn.skypack.dev/array-increaser';
</script>``````

# array-increaser

Increase Array when last bit reach band, it it useful when solve N-Sum problem.

## API

### increase(numberArray, band): Array

Increase numberArray from lower digit to higher digit, and return Number Array.

numberArray {Integer Array}, A Number Array

band {Integer Number}, Band, when current digit reach band, the digit would reset to 0, and last digit(higher digit) would increase 1.

### increaseGreaterThanUpper(numberArray, band)

numberArray {Integer Array}, A Number Array

band {Integer Number}, Band, when current digit reach band, and last digit(higher digit) would increase 1, and current digit would reset to {last digit + 1}.

### repeat(times, increaseFunction, numberArray, band)

times {Integer}, repeat times

increaseFunction {Function}, one of ['increase', 'increaseGreaterThanUpper']

numberArray

band

## Example

``````  const {increase, increaseGreaterThanUpper, repeat} = require('../');
increase(, 10); // => ;

repeat(123, increase, [1,2], 10); //=>[1, 3, 5];

repeat(1, increaseGreaterThanUpper, , 7); //=> [1,2] // 6 increase 1 is 7, band is 7, so get [1,0], but lower digit should greater than higher digit, so last digit should be 2, so result is [1,2]

repeat(10, increaseGreaterThanUpper, , 7); //=> [3,4] //repeat after 1 time, got [1,2], after 6 times, got [2,3], afrer 10 times, got [3,4]
``````

## TODO

Deal with decimals and initial Number Array has element greater than band