freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-295-lenticular-hole...

40 lines
1.0 KiB
Markdown
Raw Normal View History

---
id: 5900f4931000cf542c50ffa6
title: 问题295透镜孔
challengeType: 5
videoUrl: ''
---
# --description--
如果满足以下条件,我们称两个圆包围的凸面为透镜孔:
两个圆的中心都在晶格点上。
两个圆在两个不同的晶格点处相交。
被两个圆包围的凸区域的内部不包含任何晶格点。
考虑一下圈子: C0x2 + y2 = 25 C1x + 42+y-42 = 1 C2x-122+y-42 = 65
下图绘制了圆圈C0C1和C2。
C0和C1以及C0和C2形成一个透镜孔。
如果存在两个半径为r1和r2且形成一个透镜孔的圆我们将一个有序正实数对r1r2称为透镜对。 我们可以验证155√65是以上示例的双凸透镜对。
令LN为0 <r1≤r2≤N的不同双凸透镜对r1r2的数量。 我们可以验证L10= 30和L100= 3442。
求L100 000
# --hints--
`euler295()`应该返回4884650818。
```js
assert.strictEqual(euler295(), 4884650818);
```
# --solutions--