0520 - Secventa2: Diferență între versiuni
De la Universitas MediaWiki
(Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/520/secventa2 0520 - Secventa2] ---- == Cerinţa == Se dă un vector x cu n elemente, numere naturale și un vector y cu m elemente, numere naturale. Să se determine de câte ori este vectorul y secvență în vectorul x. == Date de intrare == Programul citește de la tastatură numărul n, iar apoi n numere naturale, elementele vectorului x, apoi numărul m, iar apoi m numere naturale, elementele vectorului y. == Date de ieșire == Pr...) |
(Nicio diferență)
|
Versiunea de la data 21 martie 2023 21:15
Sursa: 0520 - Secventa2
Cerinţa
Se dă un vector x cu n elemente, numere naturale și un vector y cu m elemente, numere naturale. Să se determine de câte ori este vectorul y secvență în vectorul x.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, elementele vectorului x, apoi numărul m, iar apoi m numere naturale, elementele vectorului y.
Date de ieșire
Programul va afișa pe ecran numărul C, reprezentând valoarea cerută.
Restricţii şi precizări
- 1 ≤ m ≤ n ≤ 1000
Exemplu
- Intrare
- 10
- 8 5 8 5 8 3 8 5 8 6
- 3
- 8 5 8
- Ieșire
- 3
Rezolvare
Rezolvare ver. 1
# 0520 - Secventa2
n = int(input())
x = list(map(int, input().split()))
m = int(input())
y = list(map(int, input().split()))
count = 0
for i in range(n - m + 1): # parcurgem vectorul x
if x[i:i + m] == y: # verificam daca subsirul y incepe aici
count += 1
print(count)