4148 - Secv10

From Bitnami MediaWiki
Revision as of 21:46, 21 March 2023 by Flaviu (talk | contribs) (Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/4148/secv10 4148 - Secv10] ---- == Cerinţa == Se dau n numere naturale, reprezentând elementele unui vector. Determinați lungimea maximă a unei secvențe de elemente divizibile cu 10, precum și numărul de secvențe de lungime maximă cu elemente divizibile cu 10. == Date de intrare == Fișierul de intrare secv10.in conține numărul n și n valori naturale, reprezentând elementele vectorului. == Date de ieșire == Fișierul de...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Sursa: 4148 - Secv10


Cerinţa

Se dau n numere naturale, reprezentând elementele unui vector. Determinați lungimea maximă a unei secvențe de elemente divizibile cu 10, precum și numărul de secvențe de lungime maximă cu elemente divizibile cu 10.

Date de intrare

Fișierul de intrare secv10.in conține numărul n și n valori naturale, reprezentând elementele vectorului.

Date de ieșire

Fișierul de ieșire secv10.out va conține pe prima linie numerele lmax și c, reprezentând lungimea maximă a unei secvențe de elemente divizibile cu 10, respectiv numărul de secvențe de lungime maximă cu elemente divizibile cu 10.

Restricţii şi precizări

  • 0 < n ≤ 10.000
  • elementele vectorului vor fi mai mici decât 1.000.000 și există cel puțin un element divizibil cu 10.

Exemplu

Intrare
11
12 10 20 30 99 1000 1 20 500 600 5
Ieșire
3 2

Rezolvare

Rezolvare ver. 1

<syntaxhighlight lang="python" line>

  1. 4148 - Secv10

with open("secv10.in") as f:

   n = int(f.readline())
   v = list(map(int, f.read().split()))

max_len = 0 count = 0 current_len = 0

for i in range(n):

   if v[i] % 10 == 0:
       current_len += 1
   else:
       current_len = 0
   if current_len >= max_len:
       if current_len > max_len:
           max_len = current_len
           count = 1
       else:
           count += 1

with open("secv10.out", "w") as f:

   f.write(str(max_len) + " " + str(count) + "\n")



</syntaxhighlight>