1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- function cal(sum, itemNum){
- let result = [];
- let arr = [];
- let temp = [];
- for(let i = 1; i <= 9; i++){
- arr.push(i);
- }
-
- function dfs(arr, temp, sum, itemNum){
- if(temp.length === itemNum){
- if(temp.reduce((a, b) => a + b, 0) === sum){
- result.push(temp.slice());
- }
- return;
- }
- for(let i = 0; i < arr.length; i++){
- temp.push(arr[i]);
- dfs(arr.slice(i + 1), temp, sum, itemNum);
- temp.pop();
- }
- }
- dfs(arr, temp, sum, itemNum);
- return result;
- }
- console.log(cal(6, 3));
- console.log(cal(7, 2));
- console.log(cal(8, 2));
- console.log(cal(12, 2));
- console.log(cal(13, 2));
- console.log(cal(16, 4));
- console.log(cal(24, 3));
- console.log(cal(24, 4))
|