freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-144-investigating-m...

56 lines
1.7 KiB
Markdown
Raw Normal View History

---
id: 5900f3fc1000cf542c50ff0f
challengeType: 5
videoUrl: ''
localeTitle: 问题144研究激光束的多次反射
---
## Description
<section id="description">在激光物理学中“白色单元”是镜像系统其充当激光束的延迟线。光束进入细胞在镜子上反弹最终恢复原状。我们将考虑的特定白色单元是椭圆形其等式为4x2 + y2 = 100。顶部对应于-0.01≤x≤+ 0.01的部分缺失,允许光线通过孔进入和退出。 <p>此问题中的光束从白色单元外部的点0.0,10.1开始光束首先在1.4-9.6)处撞击镜子。每次激光束撞击椭圆的表面时,它遵循通常的反射定律“入射角等于反射角”。也就是说,入射光束和反射光束都与入射点处的法线形成相同的角度。在左图中,红线表示激光束与白色单元壁之间的前两个接触点;蓝线表示在第一次反弹入射点处与椭圆相切的直线。给定椭圆的任意点xy处的切线的斜率m为m = -4x / y法线为垂直于入射点处的该切线。右侧的动画显示了光束的前10个反射。 </p><p>在离开之前,光束到达白细胞内表面的次数是多少? </p></section>
## Instructions
<section id="instructions">
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler144()</code>应返回354。
testString: assert.strictEqual(euler144(), 354);
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler144() {
// Good luck!
return true;
}
euler144();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
/section>