0186 - Cif Min

From Bitnami MediaWiki

Cerinţa[edit | edit source]

Se citește de la tastatură un număr natural n, apoi n numere naturale. Să se afişeze cel mai mic număr care poate fi scris folosind cifra minimă a fiecărui număr citit.

Date de intrare[edit | edit source]

Programul citește de la tastatură numărul n, iar apoi cele n numere naturale, separate prin spaţii.

Date de ieşire[edit | edit source]

Programul afișează pe ecran numărul MIN, cel mai mic număr care poate fi scris folosind cifra minimă a fiecărui număr citit.

Restricţii şi precizări[edit | edit source]

  • 0 < n < 1000
  • cele n numere citite vor fi mai mici decât 1.000.000.000

Exemplu:[edit | edit source]

Intrare

5
100 312 276 985 5021

Ieșire

10025

Încărcare soluție[edit | edit source]

Lipește codul aici[edit | edit source]

<syntaxhighlight lang="python" line="1"> n = int(input())

a = [0] * 1001

for i in range(1, n+1):

   x = int(input())
   cifmin = 10
   while x:
       if x % 10 < cifmin:
           cifmin = x % 10
       x //= 10
   a[i] = cifmin

for i in range(1, n):

   for j in range(i+1, n+1):
       if a[i] > a[j]:
           a[i], a[j] = a[j], a[i]

poz = 1

while a[poz] == 0:

   poz += 1

a[poz], a[1] = a[1], a[poz]

for i in range(1, n+1):

   print(a[i], end=)

</syntaxhighlight>