0186 - Cif Min

From Bitnami MediaWiki
Revision as of 17:51, 8 December 2023 by Raul (talk | contribs) (Pagină nouă: = Cerinţa = Se citește de la tastatură un număr natural <code>n</code>, apoi <code>n</code> 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 = Programul citește de la tastatură numărul <code>n</code>, iar apoi cele <code>n</code> numere naturale, separate prin spaţii. = Date de ieşire = Programul afișează pe ecran numărul <code>MIN</code>, cel mai mic număr care poate fi...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerinţa

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

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

Date de ieşire

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

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

Exemplu:

Intrare

5
100 312 276 985 5021

Ieșire

10025

Încărcare soluție

Lipește codul aici

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='')