fbpx

Problema #1880 – platou3 – Rezolvari PBInfo

de Mihai-Alexandru

Cerința

Se consideră un şir format din n numere întregi. Șirul conține cel puțin un număr pozitiv. Să se determine lungimea maximă a unei secvenţe din şir care are proprietatea că este formată doar din valori strict pozitive.

Date de intrare

Fișierul de intrare platou3.in conține pe prima linie numărul n, iar pe a doua linie n numere întregi separate prin spații.

Date de ieșire

Fișierul de ieșire platou3.out va conține pe prima linie numărul k, reprezentând lungimea maximă a secvenței determinate.

Restricții și precizări

  • 1 ≤ n ≤ 1000
  • numerele de pe a doua linie a fișierului de intrare vor fi din intervalul [-99,99]
  • O secvenţă a unui şir constă în elemente aflate pe poziţii consecutive în şirul considerat.

Exemplu

platou3.in

10                          
7 -22 -13 10 31 41 -6 2 10 8

platou3.out

3

Explicație

În fișierul de intrare, secvențele de lungime maximă (k=3) sunt: 10 31 41 și 2 10 8.

#include <bits/stdc++.h>

using namespace std;

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

int main()
{
    int n;
    fin >> n;
    int a[1000];
    int l = 0 , lmax=0;
    a[0]=-1;
    for(int i = 1 ; i <= n ; ++i)
    fin >> a[i];
    for(int i = 1 ; i <= n ; ++i)
    {
        if(a[i]>0 && a[i-1]>0)
        {
        l++;
        if(l>lmax)
        lmax=l;
        }
        else
        l=0;
    }
    fout << lmax+1;
    return 0;
}
Comentarii

S-ar putea sa iti placa