0415 - unique: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/4015/unique- Unique] ---- == Cerinţa == Dându-se un șir de numere naturale, să se determine câte dintre ele apar o singură dată. == Date de intrare == Programul citește de la tastatură cel mult 1.000.000 de numere naturale. == Date de ieșire == Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt corecte.", iar apoi se va afișa pe ecran numărul de numere care apar o singură dată în șir. În caz contra...
 
No edit summary
Line 10: Line 10:


== Restricţii şi precizări ==
== Restricţii şi precizări ==
* 1 ⩽ '''n''' ⩽ 200.000
* numerele citite vor fi mai mici decât 200.000
* în șir sunt cel puțin un număr și cel mult 1.000.000 de numere naturale
* în șir sunt cel puțin un număr și cel mult 1.000.000 de numere naturale
== Exemple ==
== Exemple ==

Revision as of 14:02, 12 March 2023

Sursa: Unique


Cerinţa

Dându-se un șir de numere naturale, să se determine câte dintre ele apar o singură dată.

Date de intrare

Programul citește de la tastatură cel mult 1.000.000 de numere naturale.

Date de ieșire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt corecte.", iar apoi se va afișa pe ecran numărul de numere care apar o singură dată în șir. În caz contrar, se va afișa pe ecran: "Datele nu sunt comform restricțiilor impuse.".

Restricţii şi precizări

  • numerele citite vor fi mai mici decât 200.000
  • în șir sunt cel puțin un număr și cel mult 1.000.000 de numere naturale

Exemple

Exemplul 1

Intrare
5 4 3 2 3 3 5 6 4 3 3
Ieșire
Datele sunt corecte.
2

Exemplul 2

Intrare
1234542 34 1 2 313 231 31
Ieșire
Datele nu corespund restricțiilor impuse.

Exemplul 3

Intrare
100 99 2615 1231 1412 31
Ieșire
Datele sunt corecte.
0


Rezolvare

<syntaxhighlight lang="python" line>

  1. 4015 unique

def numarare_elemente(vector):

   numar_unice = 0
   for i in range(len(vector)):
       if vector.count(i) == 1:
           numar_unice += 1
   print(numar_unice)


def conform_restrictiilor():

   vector = list(map(int, input().split()))
   for x in vector:
       if x > 200000:
           print("Datele nu sunt comform restricțiilor impuse.")
           exit()
   if len(vector) > 1000000 or len(vector) == 0:
       print("Datele nu sunt comform restricțiilor impuse.")
       exit()
   print("Datele sunt corecte.")
   return vector


if __name__ == '__main__':

   vector = conform_restrictiilor()
   numarare_elemente(vector)




</syntaxhighlight>