Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- luokka Tehtavat {
- int[] viikko
- int[] tulokset
- konstruktori Tehtavat{
- aseta viikon pituus
- aseta tulosten pituus // joko 42 tai 21 (21 vaatii työtä muualla, testien aikakatkaisu ei välttämättä vaadi tätä optimointia)
- kutsu rekursiofunktiota alkuarvoilla 0,0
- rekursiofunktio (i,p)
- if (i == viikon pituus)
- kasvata yhdellä tuloksen kohtaa p
- else
- for jokaiselle pistearvolle j // mä tein välillä 0..3 - periaatteessa sama mitä arvoja käyttää koska tulee permutaatioita
- viikko[i] = j;
- if (p + j <= tulosten pituus) // permutaatioita halutaan vain tulosten pituiselle arraylle
- hae(i + 1, p + j);
- }
- viikko[i] = 0; // backtrackkaa viikko-arrayta, jotta permutaatiot muodostuvat
- }
- }
- metodi laske(x) {
- palauta arvo tulostaulusta // tässä joutuu tekee vähän extraa jos tulos pituus on 21
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement