Sfida
Dato un array di numeri interi, ricevuti da stdin, argomenti di funzioni, argomenti di programma o qualche altro metodo:
Emette solo i numeri minimo e massimo nell'array, tramite un valore di ritorno, stdout o altri metodi di adattamento.
Sessione di esempio
> minmax( {0, 15, 2, 3, 7, 18, -2, 9, 6, -5, 3, 8, 9, -14} )
-14 18
Implementazione di riferimento
// C++14
void minmax(std::vector<int> v) {
int min = v[0]; int max = v[0];
for(auto it : v) {
if (*it < min)
min = *it;
if (*it > max)
max = *it;
}
std::cout << min << ' ' << max << std::endl;
}
Regole
- Non è possibile utilizzare una funzione integrata per calcolare i valori.
- Scappatoie standard non consentite.
- Implementazioni creative incoraggiate.
- Questo è code-golf , vince la risposta più breve ma non verrà selezionata.
chiarimenti
- Se l'array contiene 1 elemento, è necessario emetterlo due volte.
- Se i valori minimo e massimo sono gli stessi, è necessario emetterli entrambi.
code golf