Competitive Programming Guide
5.3 MB
Dimensione
Android 4.4+
Android OS
Informazioni su Competitive Programming Guide
Tutti gli algoritmi di programmazione competitivi, trucchi e strutture di dati con esempi
CP Handbook è l'unico posto per tutti gli amanti della programmazione competitiva in quanto contiene tutti gli algoritmi e le strutture di dati. Inoltre ogni argomento contiene esempi e problemi irrisolti per la pratica.
La programmazione competitiva è uno sport, intendo letteralmente. Pratica qualsiasi sport, consideriamo il cricket per quella materia, entri per pipistrello per la prima volta. Swing e miss, fallo un paio di volte e alla fine ne colpirai uno alle corde. Ora, considera un concorso di programmazione come un gioco di cricket, metaforicamente. Compilare un codice e inviare, è possibile ottenere un WA (risposta errata).
Apporta modifiche al codice e alla fine otterrai la tua prima AC (risposta accettata / corretta). Lascia che ti dia una sbirciatina, circa il 20% delle domande in un concorso di programmazione sono semplici conversioni dall'inglese semplice a un codice del tuo linguaggio di programmazione preferito.
Camminaci dentro, imparerai le regole non scritte del gioco man mano che giochi di più e migliorerai.
E credimi, non è necessario conoscere alcun algoritmo o struttura di dati "fantasia" per iniziare. Hai mai sentito parlare di "Waft shot", ma sei il miglior battitore della tua strada, giusto?
Bene, conquistiamo il primo 20% dei problemi di programmazione là fuori.
Devi sapere:
Blocco intermedio su qualsiasi linguaggio di programmazione
Inglese! Converti inglese in codice!
Facciamo un esempio di questo livello: Terribile Chandu
Tutto quello che devi fare è leggere la riga di input da STDIN e stampare il contrario di quella riga su STDOUT. Vai avanti, fai una richiesta. Cerca il tuo primo AC. Voglio di più? Abbiamo un sacco nella nostra sezione di pratica. Cerca quelli con migliaia di invii corretti.
Bene, ora sei pronto per affrontare una vera sfida. Tieniti forte, ci stiamo immergendo più a fondo.
Devi sapere:
1. Algoritmi di ordinamento e ricerca
2. Hashing
3. Teoria dei numeri
4. Tecnica avida
Ancora più importante, devi capire cosa, quando e dove applicarli. Diventa davvero complicato e quindi per aiutare i principianti a sentirsi sicuri, organizziamo una serie di concorsi come Code Monk. Prima di ogni concorso, rilasciamo un tutorial su un determinato argomento e successivamente nel concorso i problemi sono rivolti solo a quel particolare argomento. Ti consiglierei di seguire i tutorial e risolvere una o due domande su ciascun argomento.
Ormai ti sei reso conto che le domande sono fatte per ingannare il modo in cui pensiamo. A volte, se converti il semplice inglese in codice, finiresti con il verdetto TLE (tempo limite superato). È necessario imparare una serie di nuove tecniche e algoritmi per far fronte ai limiti di tempo. In alcuni casi, la programmazione dinamica (DP) viene in soccorso. Infatti, potresti aver già usato intuitivamente questa tecnica. C'è sempre almeno una domanda in ogni concorso che può essere risolta da DP.
Inoltre, avrai notato che ci sono domande che non possono essere risolte da strutture di dati di array lineari.
1. Teoria dei grafi
2. Disjoint Set Union (Union-find)
3. Albero di spanning minimo
Questo set di strutture dati ti porterà abbastanza lontano. Inoltre, avresti immaginato che la vera arte sia quella di modificare le tecniche che conosci per risolvere una domanda. Tutte le domande di livello Medio-Medio e Medio possono essere affrontate in questo modo.
Sei pronto a scalare le classifiche delle Sfide di programmazione breve, mantieni costante la persistenza. Come ho già detto, è uno sport, non lo dominerai fino a quando non lo fai davvero. Vai avanti, partecipa a un breve concorso, conosci i tuoi punti di forza, le tue debolezze e vedi come gestisci la modalità adrenalina quando il tempo passa.
Attenersi alla propria logica il più a lungo possibile, alla fine verrà fuori qualcosa di simile all'algoritmo richiesto per risolvere la domanda. Hai solo bisogno di ripassarlo. Molte di queste tecniche ti aiuteranno a risolvere alcuni dei problemi più difficili in circolazione.
1. Albero del segmento
2. Algoritmi di stringa
3. Tentativi, Suffix Tree, Suffix Array.
4. Decomposizione leggera pesante
5. Colorazione dei grafici, flusso di rete
6. Decomposizione Sqrt.
Quindi scarica questo manuale di CP e divertiti a imparare cose nuove, inoltre non dimenticare di codificarle con meno complessità temporale.
What's new in the latest 2.5.0
Informazioni sull'APK Competitive Programming Guide
Vecchie versioni di Competitive Programming Guide
Competitive Programming Guide 2.5.0
Competitive Programming Guide 2.0
Download super veloce e sicuro tramite l'app APKPure
Basta un clic per installare i file XAPK/APK su Android!