The art of balance and weight management. Il tuo codice non sara' mai stato cosi' snello
Problema
Ho un insieme di pesi diversi. Bisogna posizionarli tutti sui 2 piatti di una bilancia in modo che resti il più possibile in equilibrio.
Specifiche
Lo script accetterà come unico parametro il nome di un file di input. Il file di input avrà un numero intero positivo su ogni linea. Quelli saranno i pesi che dovrà bilanciare. Stamperà in uscita SOLO due numeri (uno per riga) con il totale dei pesi sul primo e secondo piatto della bilancia.
Dovrete fornirmi un file eseguibile con questo nome "<nick name>.<ext>", tre file di test di input chiamati "<nick name> <n>.in" e tre file con il risultato esatto nominati "<nick name>_<n>.out".
Obiettivo
Ogni programma verrà lanciato con tutti i file di input di tutti i partecipanti. L'esecuzione avrà esito positivo se: L'exit code è 0, il tempo di esecuzione è minore di 7 sec e il risultato è quello nel file ".out". L'obiettivo è quello di riuscire a dividere correttamente i pesi del maggior numero di input possibile.
Vincoli
- Il file dovrà essere un eseguibile, se utilizzate un linguaggio di scripting inserite l'interprete nella prima riga, come "#!/usr/bin/php" o "#!/bin/bash".
- Lo script dovrà prendere come parametro il nome di un file.
- Esce con exit(0) in caso di successo, con un valore diverso da 0 in caso di errore.
- Non dovrà impiegare più 7 secondi sul mio pc (RAM: 8GB CPU: i6 BogoMIPS: 4988.81)
- La somma di tutti i pesi non dovrà superare il valore 9223372036854775807. Se utilizzate un linguaggio con un limite inferiore per gli interi ne possiamo discutere.
- Il proprio programma deve girare correttamente sui propri input.
Esempio
piuma_1.in
8 3 2
piuma_1.out
8 5
# ./piuma.php piuma_1.in 5 8
L'esito dell'esecuzione in questo caso è:
Output: [5, 8] Exit code: 0 Execution time: 0.01600 s Risultato: [8, 5] Esito: Giusto