js求渐升数的第100位
我弟考了道数学竞赛题,问我能不能用代码算结果..
题目是这样的 用 1、2、3、4、5 组合数字,然后排列大小,从小到大,求排在第100位的数值大小
function foo(chars) { var count = 0; if (!chars.length) return; var _foo = function(chars, tmp) { for (i in chars) { var ch = chars; var t = tmp + ch[i]; var ch = delCharAt(chars, i); if (ch.length < 1) { count ++ ; // 只打印渐升数的第100位 if(count == 100){ console.log(count +':' + t) } } else { _foo(ch, t); } } }; _foo(chars, ''); } function delCharAt(s, i) { ss = ''; for (j in s) { if (i != j) { ss += s[j]; } } return ss; } foo('12345');