1.4 KiB
1.4 KiB
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
5900f47c1000cf542c50ff8e | Problema 270: Taglio dei quadrati | 5 | 301920 | problem-270-cutting-squares |
--description--
Un pezzo quadrato di carta con dimensioni intere N×N
è posizionato con un angolo all'origine e due dei suoi lati lungo gli assi x
e y
. Quindi lo tagliamo rispettando le seguenti regole:
- Facciamo solo tagli dritti tra due punti situati su lati diversi del quadrato e aventi coordinate intere.
- Due tagli non possono incrociarsi, ma diversi tagli possono incontrarsi sullo stesso punto di confine.
- Procedere fino a quando non sarà possibile effettuare ulteriori tagli ammissibili.
Contando qualsiasi riflessione o rotazione come distinta, chiamiamo C(N)
il numero di modi di tagliare un quadrato N×N
. Per esempio, C(1) = 2
e C(2) = 30
(mostrato di seguito).
Quanto vale C(30)\bmod {10}^8
?
--hints--
cuttingSquares()
dovrebbe restituire 82282080
.
assert.strictEqual(cuttingSquares(), 82282080);
--seed--
--seed-contents--
function cuttingSquares() {
return true;
}
cuttingSquares();
--solutions--
// solution required