Es 2 Ordinamento della tabella non permette di superare i test

N
Nikolay (1250 points)
0 21 30
asked Nov 18, 2018 in Es1 by Nikolay (1,250 points)
Salve, ragazzi. Avevo gia chiesto domanda simile a questa, pero e' veramente complicato a capire come deve essere ordinata la tabella finale. Come devono essere le colonne I1, I2 è chiaro. Invece la I3 mi stupisce : "I3) la coppia (occorrenze, post) dove nella seconda coordinata si ha l'identificativo del post
in cui la parola è comparsa più spesso e nella prima il numero di volte che vi e' comparsa,
(nel caso di  diversi post con pari numero massimo di occorrenze della parola va considerato
il post con l'identificativo minore in ordine lessicografico)". Cioe' di quale ordine lessicografico stiamo parlando se, supponiamo, abbiamo 3 post, dove in ogni post compare una stessa parola con lo stesso numero di volte. Ad esempio:

<post> 1 hw1 hw1

<post> 10 hw1 hw1

<post> 15 hw1 hw1

In questo caso devo scegliere il numero di post minore, quindi la tupla diventa (1, 2). Ma di quale quale ordine lessicografico stiamo parlando se abiamo la stessa parola "hw1"??? Chiedo aiuto, sto impazzendo!
169 views

1 Answer

Best answer
Auron (15880 points)
32 126 194
answered Nov 18, 2018 by Auron (15,880 points)
selected Nov 18, 2018 by Nikolay

Ciao Nikolay,
il tuo dubbio è di facile risoluzione :D
Quando ti viene detto "(nel caso di  diversi post con pari numero massimo di occorrenze della parola va considerato il post con l'identificativo minore in ordine lessicografico)" si intende semplicemente che se si verificasse un caso simile, dovresti prendere il post che ha il numero identificativo più piccolo tra tutti quelli che presentano lo stesso numero massimo di occorrenze... Nell'esempio da te proposto, semplicemente dovresti prendere il post "1" e scartare "10" e "15" :)

P.s. L'ordine lessicografico non si riferisce esclusivamente ai caratteri alfabetici, ma anche a quelli numerici, e ha lo stesso identico significato, tienilo bene a mente :)

Se non mi sono spiegato bene chiedi e cercherò di essere più chiaro ;)

N
Nikolay (1250 points)
0 21 30
commented Nov 18, 2018 by Nikolay (1,250 points)
Molto chiaro! Grazie, per me la cosa piu complicata era ptoprio questa: cioe' capire l'ordinamento di questa tabella
m
michele (700 points)
0 10 11
commented Nov 18, 2018 by michele (700 points)
ciao, perdonami se mi accodo, ho compreso la domanda del collega e il mio programma non sembra avere problemi a riguardo ( nell'esempio fatto prende infatti la coppia (2,1), cioè 2 occorrenze nel post n. 1), tuttavia quando avvio i test mi fallisce tutte le prove oltre la prima istanza, e non mi è possibile controllare a mano file da centinaia di righe; probabilmente sto sbagliando l'ordinamento della tabella, potresti spiegarmi come va ordinata?
L
LucaMattei (840 points)
1 21 27
commented Nov 19, 2018 by LucaMattei (840 points)
hai risolto? ho lo stesso tuo problema, ho ordinato le tuple in ordine lessicografico ma supero solo il primo test non capisco...
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2018 by andrea.sterbini (172,780 points)
Avete lasciato gli ID dei post come stringhe (come detto nel testo) senza convertirli in interi, vero?
Auron (15880 points)
32 126 194
commented Nov 19, 2018 by Auron (15,880 points)

Ciao @michele, scusami per il ritardo ma ho visto la tua richiesta soltanto ora...
Allora, l'ordinamento va fatto in questa maniera:
- La tabella viene ordinata per valori decrescenti di I1.
- Se due o più dizionari hanno lo stesso valore di I1, questi vengono ordinati TRA DI LORO per valori decrescenti di I2.
- Se due o più dizionari hanno lo stesso valore di I1 e lo stesso valore di I2, questi vanno ordinati TRA DI LORO rispetto all'ordine lessicografico delle parole.

Spero di averti aiutato :)