note operative

  • il programma deve fare input solo da file e fare output solo su file, non deve usare printf e scanf. Se nella fase iniziale di scrittura dell’algoritmo le usate per vedere cosa succede nel programma, poi dovete togliere tutti gli input da tastiera e output a video (non sono accettati); quindi NON UTILIZZARE assolutamente funzioni che arrestano l’esecuzione del programma (come ad es. system(“pause”), getch() o simili).

  • per ogni programma viene valutata la correttezza di esecuzione su N prove ma anche l’uso di risorse da parte del programma (tenerne conto se si adottano soluzioni ricorsive); quindi attenzione all'uso degli ordinamenti, che sono molto pesanti! se è necessario usare qsort

  • nella fase iniziale conviene risolvere solo l'algoritmo (parte centrale del problema) con input da tastiera (o assegnando valori alle variabili in base agli input d’esempio forniti dal testo) e output su video, utilizzando strutture dati (es. struct, array) e senza uso di file.

  • se l'algoritmo funziona, fare una versione 2 in cui utilizzare file per input e scrivere su file di output.

  • quando fate la versione che legge/scrive con file, di solito NON è necessario effettuare controlli su file di input; infatti di solito:

- il file è dato (quindi esiste) o lo create voi con i dati d'esempio (con blocco notes, denominato “input.txt” e scrivendo il contenuto in base agli esempi proposti nel testo del problema)

- non è vuoto

- contiene valori corretti (non fare controlli sui valori o rendere case- insensitive)

- considerare solo il modo in cui sono memorizzati i dati (se su una sola riga, se su più righe)

- considerare il modo in cui memorizzare su file di output (un solo valore, più valori su una riga, più valori incolonnato...)

  • seguire attentamente le indicazioni fornite nell'ambiente di gara e nel regolamento!