2021-06-15 00:49:18 -07:00
---
id: 5900f48d1000cf542c50ffa0
2022-03-01 21:39:26 +05:30
title: 'Problema 289: Cicli Euleriani'
2021-06-15 00:49:18 -07:00
challengeType: 5
forumTopicId: 301940
dashedName: problem-289-eulerian-cycles
---
# --description--
2022-03-01 21:39:26 +05:30
Sia $C(x,y)$ una circonferenza che passa attraverso i punti ($x$, $y$), ($x$, $y + 1$), ($x + 1$, $y$) e ($x + 1$, $y + 1$).
2021-06-15 00:49:18 -07:00
2022-03-01 21:39:26 +05:30
Dati i numeri interi positivi $m$ e $n$, sia $E(m,n)$ una configurazione che consiste di $m·n$ circonferenze: { $C(x,y)$: $0 ≤ x < m$, $0 ≤ y < n$, con $x$ e $y$ interi }
2021-06-15 00:49:18 -07:00
2022-03-01 21:39:26 +05:30
Un ciclo Euleriano su $E(m,n)$ è un percorso chiuso che passa attraverso ogni arco esattamente una volta. Molti di questi percorsi sono possibili su $E(m,n)$, ma siamo interessati solo a quelli che non sono auto-attraversanti: un sentiero non incrociato si tocca solo ai punti di reticolo, ma non si attraversa mai.
2021-06-15 00:49:18 -07:00
2022-03-01 21:39:26 +05:30
L'immagine qui sotto mostra $E(3,3)$ e un esempio di un percorso Euleriano senza incroci.
2021-06-15 00:49:18 -07:00
2022-03-01 21:39:26 +05:30
< img class = "img-responsive center-block" alt = "Ciclo Euleriano E(3, 3) e percorso Euleriano senza incroci" src = "https://cdn.freecodecamp.org/curriculum/project-euler/eulerian-cycles.gif" style = "background-color: white; padding: 10px;" / >
2021-06-15 00:49:18 -07:00
2022-03-01 21:39:26 +05:30
Sia $L(m,n)$ il numero di percorsi Euleriani senza incroci su $E(m,n)$. Per esempio, $L(1,2) = 2$, $L(2,2) = 37$ e $L(3,3) = 104290$.
Trova $L(6,10)\bmod {10}^{10}$.
2021-06-15 00:49:18 -07:00
# --hints--
2022-03-01 21:39:26 +05:30
`eulerianCycles()` dovrebbe restituire `6567944538` .
2021-06-15 00:49:18 -07:00
```js
2022-03-01 21:39:26 +05:30
assert.strictEqual(eulerianCycles(), 6567944538);
2021-06-15 00:49:18 -07:00
```
# --seed--
## --seed-contents--
```js
2022-03-01 21:39:26 +05:30
function eulerianCycles() {
2021-06-15 00:49:18 -07:00
return true;
}
2022-03-01 21:39:26 +05:30
eulerianCycles();
2021-06-15 00:49:18 -07:00
```
# --solutions--
```js
// solution required
```