Rezolvare completă PbInfo #239 NrLipsa

Cerinţa

Se dau mai multe numere naturale cu cel mult 9 cifre fiecare. Să se determine cele mai mari două numere de 3 cifre care nu se găsesc printre numerele date.

Date de intrare

Fişierul de intrare nrlipsa.in conţine cel mult 100000 de numere, dispuse pe mai multe linii, numerele de pe fiecare linie fiind separate prin unul sau mai multe spaţii.

Date de ieşire

Fişierul de ieşire nrlipsa.out va conţine pe prima linie cele mai mari două numere de trei cifre care nu apar în fişierul de intrare, ordonate descrescător, separate prin exact un spaţiu.

Restricţii şi precizări

  • dacă nu există două numere de trei cifre care să nu se afle în fişierul de intrare atunci se va afişa mesajul NU.

Exemplu

nrlipsa.in

12 2345 123 67 989 6 999
123 67 989 999

nrlipsa.out

998 997

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema NrLipsa:

#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("nrlipsa.in");
ofstream fout("nrlipsa.out");

int v[1000];

int main(){
    int x;
    while(fin>>x)
        if(x<1000)
            v[x] = 1;
    int max1=1000,max2=1000;
    for(int i=999; i>99 && max2==1000 ; i--)
        if(v[i]==0)
            if(max1==1000)
                max1 = i;
            else
                max2 = i;
    if(max2==1000)
        fout << "NU";
    else
        fout << max1 << " " << max2;
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #239 NrLipsa

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #239 NrLipsa de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!