1.8 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4eb1000cf542c50fffd | 5 | Problem 382: Generating polygons | Problema 382: Gerando polígonos |
Description
Diz-se que um conjunto S de números positivos gera um polígono P se: não há dois lados de P com o mesmo comprimento, o comprimento de todos os lados de P está em S e S não contém outro valor.
Por exemplo: O conjunto {3, 4, 5} gera um polígono com os lados 3, 4 e 5 (um triângulo). O conjunto {6, 9, 11, 24} gera um polígono com os lados 6, 9, 11 e 24 (um quadrilátero). Os conjuntos {1, 2, 3} e {2, 3, 4, 9} não geram nenhum polígono.
Considere a sequência s, definida da seguinte forma: s1 = 1, s2 = 2, s3 = 3 sn = sn-1 + sn-3 para n> 3.
Seja Un o conjunto {s1, s2, ..., sn}. Por exemplo, U10 = {1, 2, 3, 4, 6, 9, 13, 19, 28, 41}. Seja f (n) o número de subconjuntos de Un que geram pelo menos um polígono. Por exemplo, f (5) = 7, f (10) = 501 e f (25) = 18635853.
Encontre os últimos 9 dígitos de f (1018).
Instructions
Tests
tests:
- text: <code>euler382()</code> deve retornar 697003956.
testString: 'assert.strictEqual(euler382(), 697003956, "<code>euler382()</code> should return 697003956.");'
Challenge Seed
function euler382() {
// Good luck!
return true;
}
euler382();
Solution
// solution required