2021-06-15 00:49:18 -07:00
|
|
|
---
|
|
|
|
id: 5900f5351000cf542c510047
|
2021-08-05 23:31:15 +09:00
|
|
|
title: 'Problema 456: Triângulos contendo a origem II'
|
2021-06-15 00:49:18 -07:00
|
|
|
challengeType: 5
|
|
|
|
forumTopicId: 302130
|
|
|
|
dashedName: problem-456-triangles-containing-the-origin-ii
|
|
|
|
---
|
|
|
|
|
|
|
|
# --description--
|
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
Definição:
|
2021-06-15 00:49:18 -07:00
|
|
|
|
2022-04-05 23:36:59 +05:30
|
|
|
$$\start{align} & x_n = ({1248}^n\bmod 32323) - 16161 \\\\
|
|
|
|
& y_n = ({8421}^n\bmod 30103) - 15051 \\\\ & P_n = \\{(x_1, y_1), (x_2, y_2), \ldots, (x_n, y_n)\\} \end{align}$$
|
2021-06-15 00:49:18 -07:00
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
Por exemplo, $$P_8 = \\{(-14913, -6630), (-10161, 5625), (5226, 11896), (8340, -10778), (15852, -5203), (-15165, 11295), (-1427, -14495), (12407, 1060)\\}$$
|
2021-06-15 00:49:18 -07:00
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
Considere $C(n)$ o número de triângulos cujos vértices estão em $P_n$ e que contêm a origem em seu interior.
|
2021-06-15 00:49:18 -07:00
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
Exemplos:
|
2021-06-15 00:49:18 -07:00
|
|
|
|
2022-04-05 23:36:59 +05:30
|
|
|
$$\start{align} & C(8) = 20 \\\\
|
|
|
|
& C(600) = 8.950.634 \\\\ & C(40.000) = 266.610.948.988 \end{align}$$
|
2021-08-05 23:31:15 +09:00
|
|
|
|
2021-11-12 07:35:39 -08:00
|
|
|
Encontre $C(2.000.000)$.
|
2021-06-15 00:49:18 -07:00
|
|
|
|
|
|
|
# --hints--
|
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
`trianglesContainingOriginTwo()` deve retornar `333333208685971500`.
|
2021-06-15 00:49:18 -07:00
|
|
|
|
|
|
|
```js
|
2021-08-05 23:31:15 +09:00
|
|
|
assert.strictEqual(trianglesContainingOriginTwo(), 333333208685971500);
|
2021-06-15 00:49:18 -07:00
|
|
|
```
|
|
|
|
|
|
|
|
# --seed--
|
|
|
|
|
|
|
|
## --seed-contents--
|
|
|
|
|
|
|
|
```js
|
2021-08-05 23:31:15 +09:00
|
|
|
function trianglesContainingOriginTwo() {
|
2021-06-15 00:49:18 -07:00
|
|
|
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
2021-08-05 23:31:15 +09:00
|
|
|
trianglesContainingOriginTwo();
|
2021-06-15 00:49:18 -07:00
|
|
|
```
|
|
|
|
|
|
|
|
# --solutions--
|
|
|
|
|
|
|
|
```js
|
|
|
|
// solution required
|
|
|
|
```
|