Per i principianti assoluti: creare la lista per scalare i punti HW2

GiovanniChiara (830 points)
4 8 14
asked Oct 26, 2020 in HW2 obbligatorio by GiovanniChiara (830 points)
Mi scuso per l'ignoranza che emerge dalla domanda: suggerimenti per creare la lista di liste che ha come elemento [0] la prima parola del primo giocatore, come elemento [1] la prima del secondo, come elemento [2] la prima del terzo, come elemento [3] la prima del quarto, e così via in modo iterativo.

Non ho capito come fare.

Grazie.
342 views

6 Answers

AdSum (16290 points)
9 20 134
answered Oct 26, 2020 by AdSum (16,290 points)
Non saprei bene come spiegarlo senza utilizzare effettivamente del codice. Prova a istanziare una lista e con un'iterazione aggiungi, ad ogni iterazione,in maniera sequenziale i vari valori delle liste dei giocatori. Se cerchi nella documentazione sicuramente troverai il metodo delle liste più adatto per questa tua necessità.
giordano_sannino (13650 points)
7 16 81
answered Oct 26, 2020 by giordano_sannino (13,650 points)
Non so sia il metodo migliore per affrontare L'HW, comunque crei la lista e con l'Append aggiungi i nuovi elementi.

Quindi la sintassi sarà del tipo:

NomeLista.append(elementodaaggiungere).

Per elementodaaggiungere metterai quindi l'elemento della lista da aggiungere, quindi ogni volta metterai una lista e un indice diverso.

L'append di default lo aggiunge alla fine l'elemento
w.smorti (810 points)
1 5 11
answered Oct 26, 2020 by w.smorti (810 points)
Ciao,
invece di mescolare le liste esistenti prova a scorrerle partendo da un indice fino all'ultima mano possibile e indagando per ciascuna giocata.
In generale, più oggetti crei più rischi di appesantire il tutto.
Potresti poi accorgerti che il comportamento per ogni singola giocata e l'indagine da fare sulle tessere residue potrebbe essere iterativo e parametrizzabile.
Romitoskj (8920 points)
4 8 40
answered Oct 26, 2020 by Romitoskj (8,920 points)
Più che in questa maniera proverei a fare una lista di liste dove il primo elemento è la lista di parole del primo giocatore, il secondo la lista del secondo, il terzo quella del terzo ed il quarto quella del quarto.

A questo punto potrai accedere ad una parola indicando il giocatore ed il turno.
gusgus (1730 points)
5 8 31
answered Oct 26, 2020 by gusgus (1,730 points)
reshown Oct 27, 2020 by gusgus
Non so quanto possa essere efficiente una scelta del genere. Ti consiglio, invece, di usare una matrice con al primo valore la lista delle parole del primo giocatore, al secondo la lista del secondo giocatore e così via. Per poi scorrerla dovrai utilizzare doppie parentesi quadre in questo modo: [][], dove nella prime parentesi inserirai l'indice del giocatore e nelle seconde parentesi l'indice del turno (la posizione della parola nella lista per dirlo più chiaramente)
Loriv3 (7970 points)
8 20 84
answered Oct 26, 2020 by Loriv3 (7,970 points)
Prova a vedere il codice come se tu non sapessi come va a finire la partita e quali sono le parole che ogni giocatore mette. Prova a pensare come se tu stessi guardando in diretta  la partita, proverei a cambiare strategia