freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/rosetta-code/taxicab-numbers.md

52 lines
1.9 KiB
Markdown
Raw Normal View History

---
id: 594ecc0d9a8cf816e3340187
title: 出租车号码
challengeType: 5
videoUrl: ''
---
# --description--
[出租车编号](<https://en.wikipedia.org/wiki/HardyRamanujan number> "wpHardy-Ramanujan号码") 此处使用的定义是一个正整数可以用多种方式表示为两个正立方体的总和。第一个出租车编号是17291 <sup>3</sup> + 12 <sup>3</sup>和9 <sup>3</sup> + 10 <sup>3</sup> 。出租车号码也被称为:\*出租车号码\*出租车号码\*出租车号码\* 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);
```
taxicabNumbers25应该返回[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);
```
taxicabNumbers39由20 - 29得到的数字应为[314496,320264,327763,373464,402597,439101,443889,513000,513856]。
```js
assert.deepEqual(taxicabNumbers(39).slice(20, 29), res39From20To29);
```
# --solutions--