View Single Post
Old 11-01-2011, 10:26   #10
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Ho capito, ma a questo punto non vedo alternative alla substring per quello che ti serve.

Addirittura. Non è che il bot sia costituito da neuroni reali?
sicuramente è tutto automatizzato, però ovviamente dovranno evitare script che si inloopano e soprattutto avranno bisogno di processare la coda di soluzioni inviate senza far aspettare giorni per avere una risposta (infatti al max il giorno dopo l'invio il bot risponde).

poi è anche divertente sapere che devi confrontarti non solo con la correttezza logica, ma anche con vincoli prestazionali.

Quote:
OK, ma almeno un tetto massimo alle prestazioni potevano metterlo.

Anche perché i linguaggi utilizzati sono abbastanza variegati, e differiscono molto a livello prestazionale.
sì questo è un po' fastidioso, nel senso che se il vincolo prestazionale fa parte dei requisiti, dovrebbe essere specificato.

E' comunque un buon metodo per capire quale strumento è più adatto a determinati task: finora non avevo mai dovuto confrontarmi più di tanto con l'inadeguatezza di un certo linguaggio nei confronti di un certo problema.

Quote:
Io gli scriverei e chiederei di conoscere almeno il tetto massimo oltre il quale scatta il timeout per l'applicazione, e le caratteristiche di massima della macchina in cui gira. Almeno eviterei di proporre soluzioni se so già in partenza che verrebbero bocciate causa inefficienza.
infatti credo che farò così

Quote:
Purtroppo è concreta: quest'ultima utilizza un compilatore JIT di default, mentre la versione mainstream di Python (e quella usata non è nemmeno delle più recenti; da un pezzo è disponibile la 2.7, che è anche più efficiente) non ne usa al momento.
avevo anche provato a compilare il modulo python per ottenre il corrispondente .pyc, ma le prestazioni sono rimaste invariate

Quote:
Un consiglio per migliorare le prestazioni: cerca di incapsulare tutto il codice dentro funzioni, e NON accedere a variabili globali, se ti è possibile (al limite passale come parametri durante una chiamata a funzione) ma soltanto se vengono referenziate dentro un loop (se, invece, sono utilizzate "una tantum", per singoli controlli o utilizzi, vanno bene anche globali).

In questo modo tutte le variabili (compresi i parametri passati a una funzione) sono definiti "locali", e il loro accesso (load, store) è di molto più veloce.
il codice è già così, ma grazie per il suggerimento!

Quote:
Altra cosa: disabilita il garbage collector all'inizio del codice.
grazie di nuovo!
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso