Olimpiadi italiane 2016

Ci saranno dei corsi preparatori prima della selezione nazionale?

In genere gli studenti si preparano autonomamente (o le scuole organizzano dei corsi), ricordo solo un’edizione in cui ci fu un corso di preparazione prima delle nazionali (nell’anno IOI 2012, ovvero più o meno alla fine dell’estate 2011), ma dubito che si farà quest’anno dopo 3 anni in cui non si è fatto… :disappointed:

Che io sappia, di solito non organizzano corsi di preparazione per le nazionali. Se ti vuoi studiare un po di argomenti utili “Competitive programming” di Felix e Steven Halim è considerato la “Bibbia”.
Dario

1 Mi Piace

Purtroppo non sono molto brava in inglese. Sapresti consigliarmi delle guide in italiano

Qualche risorsa in italiano:

  • Guida alla selezione territoriale: utilissima anche per prepararsi alle nazionali, secondo me.
  • Strutture di dati e algoritmi (libro): comprende anche un software di visualizzazione degli algoritmi (ALVIE) il quale si può scaricare gratuitamente. Io all’epoca avevo la prima edizione del libro, non so cosa cambi di preciso (a parte la copertina, che forse preferivo come era prima :frowning:).
  • Introduzione agli algoritmi e strutture dati (libro): abbastanza costoso (ad oggi 52.70 € su amazon), tratta gli argomenti in modo molto teorico, e può essere comodo per l’università per eventuali esami di algoritmi e strutture dati.

Resta però il fatto che è sempre meglio cercare informazioni in inglese per quanto riguarda le materie tecniche. In inglese ci sono anche ottimi corsi online gratuiti (ad esempio questo).

Altra cosa importante: imparare tanti algoritmi classici non è necessariamente una buona strategia (nel corso online che ho appena linkato viene richiesto tra le altre cose di implementare un k-d tree, che è decisamente una di quelle cose “troppo tecniche” da dare in una gara normale :stuck_out_tongue:).

Quindi oltre a studiare è bene:

  1. Imparare l’inglese, non tanto perché è bene conoscere le lingue, ma perché per le materie tecniche l’inglese è una necessità (l’italiano o le altre lingue no :stuck_out_tongue:)
  2. Allenarsi e/o gareggiare online (COCI, USACO, Codeforces, Topcoder, Project Euler, …)

P.S. se non sbaglio il libro Competitive Programming in inglese viene regalato ai probabili olimpici (ovvero quelli che si classificano meglio nella finale nazionale) come parte del programma di allenamento.

2 Mi Piace

Secondo te per uno con una buona conoscenza della lingua inglese con cosa dovrebbe cominciare a prepararsi, dato che hai fatto una lista enorme di risorse e non so da dove iniziare?

Ad esempio c’è il training gate delle USACO: http://train.usaco.org. È fatto bene, soltanto che ti blocca finché non superi tutti i task di un determinato argomento prima di lasciarti proseguire sui nuovi argomenti (io sono bloccato da qualche parte nel chapter 4) quindi a volte può risultare fastidioso se ad esempio vuoi spaziare su più argomenti.

Inoltre se si sa l’inglese è un’ottima idea partecipare a quante più gare si trovano online, ad esempio su Codeforces ne viene tenuta in media una alla settimana.