👤

Pbinfo problema 4148 am nevoie repede!! Numai in c++

Răspuns :

Răspuns:

#include <iostream>

#include <fstream>

using namespace std;

int main() {

ifstream fin("secv10.in");

ofstream fout("secv10.out");

int n;

fin >> n;

int lmax = 0; // Lungimea maximă a unei secvențe de elemente divizibile cu 10

int c = 0; // Numărul de secvențe de lungime maximă cu elemente divizibile cu 10

int currentLength = 0; // Lungimea secvenței curente

for (int i = 0; i < n; ++i) {

int x;

fin >> x;

if (x % 10 == 0) {

currentLength++;

lmax = max(lmax, currentLength);

} else {

currentLength = 0;

}

}

// Determinăm numărul de secvențe cu lungimea maximă

fin.clear();

fin.seekg(0);

for (int i = 0; i < n; ++i) {

int x;

fin >> x;

if (x % 10 == 0) {

int length = 0;

while (i < n && x % 10 == 0) {

length++;

fin >> x;

i++;

}

if (length == lmax) {

c++;

}

}

}

fout << lmax << " " << c << endl;

fin.close();

fout.close();

return 0;

}