Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Purtroppo mi devo arrendere Ho fatto solo dieci punti, perchè tutte le mie soluzioni (quantunque corrette) risultavano troppo lente... Pazienza, almeno ci ho provato.
Io ho risolto Tidy Numbers e Bathroom Stalls, ma Bathroom Stalls large prendeva troppo tempo. Pancakes e Fashion non li ho provati, spero mi bastino questi due per qualificarmi.
Io ho fatto Tidy Numbers small (il large l'ho risolto, ma ho sforato con il tempo) e Bathroom Stalls small 1 (per lo small 2 non ce l'ho fatta con il tempo: l'algoritmo più veloce che sia riuscito ad elaborare richiede comunque troppissimo tempo)... quello dei Pancakes l'ho provato solo di sfuggita stamattina (ma non l'ho fatto, alla fine), e l'ultimo non l'ho neanche letto.
Posso chiederti che soluzione hai pensato per Bathroom Stalls?
Io ho provato un approccio greedy: ho ipotizzato che la prima persona vada sempre in round(N/2), la seconda in uno tra round(N/2 + N/4) e round(N/2 - N/4) e così via... ed in effetti funziona (almeno stando ai 10-15 casi piccoli che ho provato su carta), ma è ancora troppo lento...
Ho riscritto il mio codice in Java e sfruttando i suggerimenti del link qui sopra... in meno di un minuto mi ha dato la risposta. Voglio sbattermi la testa al muro. Lo sapevo risolvere.
Ahh, si una priorityqueue era meglio di un hashtable... mi e' sfuggita di mente xD. Comunque tutta esperienza per la prossima volta! L'importante e' imparare.
Aggiungi un commento