Rezolvare completă PbInfo #1504 Comori1

Diriginta clasei a V-a organizează cu cei n elevi ai clasei sale concursul „Căutătorii de comori”. În concurs, fiecare elev trebuie să treacă prin n puncte de control și să răspundă la o întrebare la care primește un punctaj cuprins între 0 și 100.

Mihai, elev în clasa a V-a, participă cu mare plăcere la concurs și își notează punctajele obținute la fiecare punct de control.

Cerința

Să se specifice numerele de ordine ale punctelor de control la care Mihai a obținut un punctaj mai mic decât cel obținut la punctul de control anterior. Dacă punctajele obținute de Mihai au fost în ordine crescătoare, se va afișa valoarea 0.

Date de intrare

Fișierul de intrare comori1.in conține:

  • pe prima linie, un număr natural n reprezentând numărul punctelor de control,
  • pe a doua linie, un șir format din n numere naturale reprezentând punctajele lui Mihai la fiecare punct de control, separate prin câte un spațiu.

Date de ieșire

Fișierul de ieșire comori1.out va conține numerele de ordine ale punctele de control la care Mihai a obținut un punctaj mai mic decât cel obținut la punctul de control anterior sau valoarea 0 dacă punctajele obținute de Mihai au fost în ordine crescătoare.

Restricții și precizări

  • 1 ≤ n ≤ 1000
  • Numerele din şir nu depăşesc 100.

Exemplul 1

comori1.in

6 
50 60 65 70 70 80

comori1.out

0

Explicație

Mihai realizează la cele 6 puncte de control punctajele

50 ≤ 60 ≤ 65 ≤ 70 ≤ 70 ≤ 80

Pentru că punctajele au fost în ordine crescătoare afișăm 0.

Exemplul 2

comori1.in

9 
66 70 20 35 50 34 69 80 12

comori1.out

3 6 9

Explicație

  • La punctul de control 3 Mihai are punctajul 20 ≤ 70;
  • La punctul de control 6 Mihai are punctajul 34 ≤ 50;
  • La punctul de control 9 Mihai are punctajul 12 ≤ 80.

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 Comori1:

#include <fstream>

using namespace std;
ifstream fin("comori1.in");
ofstream fout("comori1.out");
int n,ok,i,a,b;
int main()
{
    fin>>n;
    ok=1;
    fin>>a;
    for(i=2; i<=n; i++)
    {
        fin>>b;
        if(a>b)
        {
            ok=0;
            fout<<i<<;
        }
        a=b;
    }
    if(ok==1)
        fout << 0 << endl;
    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 #1504 Comori1

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1504 Comori1 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!