Backtracking in plan: Diferență între versiuni
De la Universitas MediaWiki
|
|
Linia 1: |
Linia 1: |
| {| class="wikitable sortable" | | {| class="wikitable sortable" |
| |+ | | |+ |
| !Permutări | | !Denumire exercițiu |
| |- | | |- |
| |1.Cerința | | |[[]] |
| |- | | |- |
| |2.Date de intrare | | |[[]] |
| |- | | |- |
| |3.Date de ieșire | | |[[]] |
| |- | | |- |
| |4.Restricții și precizări | | |[[]] |
| |- | | |- |
| |5.Exemplu | | |[[]] |
| |- | | |- |
| |6.Rezolvare | | |[[]] |
| |} | | |} |
| 1.Cerința
| |
|
| |
| Să se determine toate posibilitățile de aranjamente al unui set de litere sau cifre luate câte două.
| |
|
| |
| 2.Date de intrare
| |
|
| |
| Programul citește de la tastatură mai multe litere sau cifre (cu precizarea să fie cel puțin două litere/cifre)
| |
|
| |
| 3.Date de ieșire
| |
|
| |
| După introducerea datelor, programul va creea permutări cu două elemente.
| |
|
| |
| 4.Restricții și precizări
| |
|
| |
| Cifrele ∈ N
| |
|
| |
| 5.Exemplu
| |
|
| |
| Intrare
| |
|
| |
| abc
| |
|
| |
| Ieșire
| |
|
| |
| ['a', 'b', 'c']
| |
|
| |
| ['aa', 'ab', 'ac', 'ba', 'bb', 'bc', 'ca', 'cb', 'cc']
| |
|
| |
|
| |
| Intrare
| |
|
| |
| 123
| |
|
| |
|
| |
| Ieșire
| |
|
| |
| ['1', '2', '3']
| |
|
| |
| ['11', '12', '13', '21', '22', '23', '31', '32', '33']
| |
|
| |
|
| |
| 6.Rezolvare<syntaxhighlight lang="python3" line="1" start="1">
| |
| def permutare(lista, s):
| |
| if lista == 1:
| |
| return s
| |
| else:
| |
| return [
| |
| y + x
| |
| for y in permutare(1, s)
| |
| for x in permutare(lista - 1, s)
| |
| ]
| |
|
| |
| lista = list(input("Introduceti litere/cifre:"))
| |
| print(lista)
| |
| print(permutare(2, lista))
| |
| </syntaxhighlight>
| |
Versiunea de la data 7 ianuarie 2023 12:35
Denumire exercițiu
|
[[]]
|
[[]]
|
[[]]
|
[[]]
|
[[]]
|
[[]]
|