--- id: 594ecc0d9a8cf816e3340187 title: 出租车号码 challengeType: 5 videoUrl: '' --- # --description-- [出租车编号]( "wp:Hardy-Ramanujan号码") (此处使用的定义)是一个正整数,可以用多种方式表示为两个正立方体的总和。第一个出租车编号是1729,即:1 3 + 12 3和9 3 + 10 3 。出租车号码也被称为:\*出租车号码\*出租车号码\*出租车号码\* Hardy-Ramanujan号码任务:编写一个返回最低N个出租车号码的函数。对于每个出租车编号,显示数字以及它的构成立方体。另请参阅:在线整数序列百科全书上的\[`http://oeis.org/A001235` A001235出租车编号]。 MathWorld上的[Hardy-Ramanujan数字](http://mathworld.wolfram.com/Hardy-RamanujanNumber.html) 。 MathWorld上的[出租车编号](http://mathworld.wolfram.com/TaxicabNumber.html) 。维基百科上的[出租车号码](https://en.wikipedia.org/wiki/Taxicab_number) 。 # --hints-- `taxicabNumbers`是一个功能。 ```js assert(typeof taxicabNumbers === 'function'); ``` `taxicabNumbers`应该返回一个数组。 ```js assert(typeof taxicabNumbers(2) === 'object'); ``` `taxicabNumbers`应返回一组数字。 ```js assert(typeof taxicabNumbers(100)[0] === 'number'); ``` `taxicabNumbers(4)`必须返回[1729,4104,13832,20683]。 ```js assert.deepEqual(taxicabNumbers(4), res4); ``` taxicabNumbers(25)应该返回[1729,4104,13832,20683,32832,39312,40033,46683,64232,65728,110656,110808,134379,149389,165464,171288,195841,216027,216125,262656,314696,320264 ,327763,373464,402597] ```js assert.deepEqual(taxicabNumbers(25), res25); ``` taxicabNumbers(39)由20 - 29得到的数字应为[314496,320264,327763,373464,402597,439101,443889,513000,513856]。 ```js assert.deepEqual(taxicabNumbers(39).slice(20, 29), res39From20To29); ``` # --solutions--