Trova la somma pari massima

Corso Online per Potenziare le Competenze Digitali

Topolino ha ricevuto in regalo una sequenza di N coppie (ai, bj) di numeri interi.
Ha deciso che per ogni coppia calcolerà la somma ai+bj, con l’obiettivo di cercare la somma più grande.
Fin qui tutto normale, purtroppo però il dottore ha ordinato a Topolino di stare alla larga dai numeri dispari!
Aiuta Topolino scrivendo un programma che, presi in ingresso N e la sequenza di coppie (ai, bj), stampi in uscita la somma massima tra quelle pari.
Se N fosse uguale a 5 e la sequenza di coppie ricevuta da Topolino fosse la seguente:

coppie 746 985 168 440 425 940 72 376 801 264
somme 1731 608 1365 448 1065

allora il tuo programma dovrebbe stampare 608.

Dati di input

Nel file input.txt sono presenti N+1 righe di testo: nella prima c’è un singolo numero intero positivo N, dalla seconda riga alla N+1-esima ci sono le N coppie di interi ai e bj, separati da uno spazio, che compongono le coppie (ai, bj) nella sequenza di Topolino.

Dati di output

Nel file output.txt dovrai stampare un singolo numero intero, la somma massima tra le somme pari delle coppie ricevute in input.
Se tale somma non dovesse esistere, allora dovrai stampare -1.

Assunzioni

  • 1 ≤ N ≤ 1000
  • 0 ≤ ai, bj < 1000.

Esempi di input/output

input.txt output.txt
5
746 985
168 440
425 940
72 376
801 264
608
1
383 886
-1

/*
    www.valcon.it
    Corso Online per Potenziare le Competenze Digitali
    Trova la somma pari massima
*/

#include 
#include 
using namespace std;

int main()
{
    ifstream fin ( "input.txt");
    ofstream fout("output.txt");
	
    int N,
    	a,b,
    	somma,
        massimo=-1;

    fin >> N;	
    for(int i=1; i <= N; i++)
    {
        fin >> a >> b;
        somma=a+b;
        if(somma%2 == 0 && somma > massimo)
            massimo=somma;
    }
    fout << massimo;				
    return 0;
}

Lascia un commento