Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

come faccio a partire dalle sequenze più piccole per trovare il modulo?

Light (5130 points)
55 181 229
in HW4 obbligatorio by (5.1k points)
penso di starci quasi perchè mi sembra che va bene il controllo biunivoco perchè passa test ma il problema è che devo trovare la frequenza piu piccola...io divido sempre in due e se non trovo corrispondenza divido per 3 e cosi via ma cosi non va perchè mi prende i multipli certe volte tipo mi prende 90 invece di 15...come faccio ad iniziare dalla piu grande divisione per farmi prendere le porzioni piu piccole?? oppure come faccio a dire "90 è più grande controlla se ci sta un periodo più piccolo"?
427 views
closed

3 Answers

Best answer
AdSum (16290 points)
9 20 134
by (16.3k points)
selected by
Il ragionamento è "giusto" in se per se ma sbagliato per risolvere il problema a te proposto. Questo è ottimo per trovare il modulo PIU GRANDE. Tu necessiti del PIU PICCOLO. Sai che il modulo è >2 quindi comincia il controllo da li :)
Ci sei quasi, buon lavoro!
Light (5130 points)
55 181 229
by (5.1k points)
si ci sto provando ma il problema è che mi trova corrispondenze subito...perchè io vedo se una è sbagliata quando io avevo già trovato una corrispondenza...e lui non trovandomele mi dice "ah quella è una corrispondenza giusta" solo perchè ha valori diversi...non so come fare da qua
Light (5130 points)
55 181 229
by (5.1k points)
tipo [0, 1, 2, 3, 2, 4] questi sono i primi 6 elem del est 180, io parto da 3 e faccio slice quindi prendo [0,1,2] e gli ultimi 3 [3,2,4] lui mi dice 0->3, 1->2 e 2->4, ah non viola allora corrispondenza...
Light (5130 points)
55 181 229
by (5.1k points)
ma devo confrontare con tutta la lista? tipo la prima sequenza con le altre sequenze della lista?
AdSum (16290 points)
9 20 134
by (16.3k points)

ma devo confrontare con tutta la lista? tipo la prima sequenza con le altre sequenze della lista?

Esattamente

Light (5130 points)
55 181 229
by (5.1k points)
ecco perchè sbaglia hahaha ma come faccio però a scorrere cosi la lista prima 3 a 3 poi a 5 a 5? con le slice ma in che modo posso nadare avanti sposatndo sia inizio che fine?
AdSum (16290 points)
9 20 134
by (16.3k points)
I cicli sono tuoi amici :)
Light (5130 points)
55 181 229
by (5.1k points)
ho solo un'altro dubbio,va bene se confronto sempre la prima sequenza? o devo "spostare" sempre tutto quindi confronto di 2 a 2?
AdSum (16290 points)
9 20 134
by (16.3k points)
E' indifferente. Penso che lasciando la prima sequenza sia più efficiente (almeno io ho fatto cosi), nel caso scopri il contrario fammi sapere!
1
1914925 (3070 points)
2 4 23
by (3.1k points)
edited by
Oltre a ciò che ha già detto AdSum, controlla anche che le sottoliste non siano vuote (inteso che non ci sono elementi che si ripetono), poiché due sottoliste vuote si eguagliano appunto, portandoti a possibili risultati fuorvianti
twgever (17470 points)
8 29 105
by (17.5k points)
devi riuscire ad implementare una maniera per trovare tutti i divisori (così eviti di dividere per 2 o 3 a caso) a partire dal più piccolo. Secondo me l'operatore % ti può aiutare molto, restituisce il resto della divisione fra i due elementi.