0287 – Verif Ord
De la Universitas MediaWiki
Cerinţa
Se dau numar_vectori şiruri cu elemente numere întregi. Să se verifice despre fiecare dacă este ordonat crescător.
Date de intrare
Programul citește de la tastatură numărul numar_vectori; iar apoi numar_vectori şiruri – pentru fiecare, se citeşte mai întâi numărul de valori numar_elemente, apoi valorile din şir.
Date de ieșire
Programul afișează pe ecran n valori 0 sau 1, separate prin spaţii. A k-a valoare este 1, dacă al k-lea şir este ordonat crescător, respectiv 0 dacă şirul nu este ordonat crescător.
Restricţii şi precizări
- numar_elemente, numar_vectori ∈ ℕ
- 1 ⩽ numar_vectori ⩽ 10
- 1 ⩽ numar_elemente ⩽ 500
- -10000 < element vector < 10000
- element vector ∈ ℤ
Exemplu
- Intrare
- 3
- 9
- 5
- -5
- 8
- -2
- -7
- 0
- -9
- 10
- 7
- -6
- -5
- -4
- 0
- 2
- 5
- 8
- 5
- 2
- 7
- 8
- 10
- 10
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 0 1 1
- Intrare
- 3
- 2
- 15
- 10
- 0
- Ieșire
- Datele introduse nu corespund restricțiilor impuse.
- Intrare
- 2
- 4
- -25
- abc
- 10
- 15
- Ieșire
- Datele introduse nu corespund restricțiilor impuse.
Rezolvare
Rezolvare ver. 1
# 0287 - Verif Ord
def validare_date_numar_vectori(numar):
if numar.isdigit() and 1 <= int(numar) <= 10:
return True
else:
return False
def validare_date_numar_elemente(numar):
if numar.isdigit() and 1 <= int(numar) <= 500:
return True
else:
return False
def validare_date_vector(vector):
for numar in vector:
if numar.startswith('-') and numar[1:].isdigit() and len(numar) < 6:
continue
elif numar.isdigit() and len(numar) < 5:
continue
else:
return False
return True
def verif_ord(numar_vectori, vector):
flag = []
for indice_vector in range(numar_vectori):
if vector[indice_vector] == sorted(vector[indice_vector]):
flag.append("1")
else:
flag.append("0")
print(*flag, sep=" ")
if __name__ == "__main__":
numar_vectori = input()
vector = []
if validare_date_numar_vectori(numar_vectori):
numar_vectori = int(numar_vectori)
for numar in range(numar_vectori):
numar_elemente = input()
if validare_date_numar_elemente(numar_elemente):
numar_elemente = int(numar_elemente)
vector_aux = []
for indice in range(numar_elemente):
vector_aux.append(input())
if validare_date_vector(vector_aux):
vector_aux = list(map(int, vector_aux))
vector.append(vector_aux)
else:
print("Datele de intrare nu corespund restricțiilor impuse.")
break
else:
print("Datele de intrare nu corespund restricțiilor impuse.")
break
else:
print("Datele de intrare corespund restricțiilor impuse.")
verif_ord(numar_vectori, vector)
else:
print("Datele de intrare nu corespund restricțiilor impuse.")