var ret = []; var levels = [698, 208, 128, 68, 6]; function getRet(sum, level){debugger; if(!level) level = 0; if(level > levels.length - 1) return false; var thisCount = Math.floor(sum / levels[level]); while(thisCount >= 0){ ret[level] = thisCount; var nextSum = sum - thisCount*levels[level]; var ok; if(nextSum){ ok = getRet(nextSum, level+1); }else{ok = true;} if(!ok){ thisCount--; }else{ return ret; } } return false; }