Cerinţa
Se dă un șir cu n
elemente, numere naturale nenule, în care cel puţin un element se repetă. Să se determine lungimea maximă a unei secvenţe de elemente din şir, cu proprietatea că primul şi ultimul element din secvenţă au aceeaşi valoare.
Date de intrare
Fişierul de intrare lungime1.in
conţine pe prima linie numărul n
; urmează n
numere naturale separate prin spaţii, reprezentând elementele şirului, ce pot fi dispuse pe mai multe linii.
Date de ieşire
Fişierul de ieşire lungime1.out
va conţine pe prima linie numărul L
, reprezentând lungimea maximă determinată.
Restricţii şi precizări
1 ≤ n ≤ 100.000
- elementele șirului sunt numere naturale nenule mai mici sau egale cu
100.000
Exemplu
lungime1.in
12 2 13 10 5 10 12 6 7 5 10 12 8
lungime1.out
8
Explicație
Cea mai lungă secvenţă de elemente în care primul şi ultimul element sunt egale este 10 5 10 12 6 7 5 10
, şi are lungimea 8
.
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 Lungime1:
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
ifstream fin("lungime1.in");
ofstream fout("lungime1.out");
int v[100005],n;
int main(){
fin >> n;
int lgmax = 0;
for(int i=1;i<=n;++i)
{
int x;
fin >> x;
if(v[x] == 0)
v[x] = i;
else
if(i-v[x] + 1 > lgmax)
lgmax = i - v[x] + 1;
}
fout << lgmax ;
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 .
Rezolvarea problemei #663 Lungime1
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #663 Lungime1 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!