abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 19:22 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Bezpečnostní upozornění

    Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.

    Ladislav Hagara | Komentářů: 2
    dnes 03:33 | Zajímavý software

    Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na

    … více »
    NUKE GAZA! 🎆 | Komentářů: 2
    včera 18:22 | Nová verze

    Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 18
    včera 17:22 | Nová verze

    Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.

    Ladislav Hagara | Komentářů: 2
    včera 13:33 | Pozvánky

    Byl zveřejněn program konference Installfest 2026. Konference proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13. Vstup zdarma.

    Ladislav Hagara | Komentářů: 3
    včera 03:55 | Nová verze

    Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.

    Ladislav Hagara | Komentářů: 12
    17.3. 23:55 | Nová verze

    Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…

    Ladislav Hagara | Komentářů: 27
    17.3. 18:11 | Nová verze

    Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    17.3. 04:55 | Nová verze

    Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.

    Ladislav Hagara | Komentářů: 12
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (1%)
     (12%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1113 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: Python, program na variace

    3.10.2010 20:28 Milan Horacek
    Python, program na variace
    Přečteno: 990×
    Dobry den,

    nevi prosim nekdo kde bych nasel, anebo je nekdo schopny napsat v pythonu nasledujici program:

    1) Program bude generovat 8-miste retezce (co radek to retezec)

    2) Retezce budou obsahovat pouze znaky a-z (mala pismena) a 0-9 (cisla)

    3) V kazdem retezci se bude vyskytovat prave jedno cislo, zbytek budou male znaky

    4) Program v libovolnem poradi vygeneruje VSECHNY mozne retezce splnujici body 1-3

    Napadlo me to nejdriv resit tak, ze si vytvorim program na generovani permutaci bez opakovani s tim, ze budu generovat osmice z prvku a-z a 0-9 a kazdy vygenerovany retezec pote otestuji na podminku 3 a v pripade uspechu ho vypisu.

    Myslite, ze takto by to slo udelat?

    Potreboval bych tento problem vyresit v Pythonu, ale me programatorske schopnosti jsou nedostatecne. Nasla by se nejaka dobra duse, ktera by v ramci procviceni se v pythonu dany problem vyresila? Byl bych velice vdecny.

    Jeste poznamka, nejedna se o zadani zadneho skolniho projektu, pouze se s kamaradem nemuzeme shodnout kolik takovych retezcu existuje a timto zpusobem si to chceme programove overit.

    Odpovědi

    3.10.2010 20:52 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Spočítať to je oveľa jednoduchšie, ako urobiť program. :)
    3.10.2010 21:01 Milan Horacek
    Rozbalit Rozbalit vše Re: Python, program na variace
    Na to jsem prave taky prisel, proto pisu sem:) Ten program bych potreboval jak pro overeni vysledku tak pro inspiraci a dalsi upravy.
    3.10.2010 20:53 Milan Horacek
    Rozbalit Rozbalit vše Re: Python, program na variace
    Zapomnel jsem tam jeste napsat jednu podstatnou podminku. Znaky se v ramci retezce nesmi opakovat.
    4.10.2010 07:31 Petr Drlik | skóre: 26 | Bernartice nad Odrou
    Rozbalit Rozbalit vše Re: Python, program na variace
    V pythonu nedelam, ale umysl generovat neco a potom kontrolovat zdali, je scestny. Ja bych to pojal tak, ze bych generoval osmice znaku postupne. Prvni znak napr. cislo 0 a dalsi a, potom b atd. V podmince generovani kontrola na vyskyt pismena, ktere ale uz dopredu znam. Nedovedu si ale predstavit tu radu retezcu(jsem uz hodne, hodne dlouho ze skoly). Jen nevim, jak by to splnovalo podminku o libovolnem poradi. Potom se ale domnivam, ze zadavatel musel vedet, ze najiti vsech retezcu timto zpusobem by byla sysifovska prace. Ke konci generovani by trvalo nekonecne dlouho, nez by narazil na retezec, ktery jeste vygenerovan neni.
    Kdyby se bříza nestyděla, tak hoří i pod vodou !
    4.10.2010 10:52 NdrU | skóre: 10
    Rozbalit Rozbalit vše Re: Python, program na variace
    Není potřeba nic kontrolovat. Můžeme vzít množinu písmen a-z (python má přímo datový typ set) a v sedmi zanořených for cyklech vždy vzít jedno písmeno z množiny, přidat ho do slova, a vytvořit novou množinu, která bude menší o to konkrétní písmeno. Přes tuto novou množinu bude iterovat další for a tak dále (případně by se to dalo samozřejmě udělat rekurzí, takhle je zřejmější, jak to funguje).
    V těle posledního foru by se potom na všechna možná místa vzniklého slova vložila čísla 0-9 (což si vyžádá nejspíš další dva fory).
    4.10.2010 11:44 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Nechce sa mi to skúšať, ale podľa mňa by takéto generovanie tých reťazcov trvalo strašne dlho.
    4.10.2010 11:46 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    To je jedno. Bude to trvat věčnost, protože možností je 9 (vyberu číslo) * 8 (vyberu polohu čísla) * 26^7 (do zbytku umístím libovolně a-z), což je něco přes půl bilionu.
    4.10.2010 14:40 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Tých reťazcov bude o niečo menej. Síce je tých čísel 10 a nie len 9, ale asi si si nevšimol tú doplňujúcu informáciu, že sa znaky nesmú opakovať (ale aj tak bude tých možností veľmi veľa).
    4.10.2010 14:47 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    Teda, ať to čtu, jak to čtu, v
    1) Program bude generovat 8-miste retezce (co radek to retezec)

    2) Retezce budou obsahovat pouze znaky a-z (mala pismena) a 0-9 (cisla)

    3) V kazdem retezci se bude vyskytovat prave jedno cislo, zbytek budou male znaky
    žádnou podmínku o neopakování nevidím.
    4.10.2010 14:48 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    4.10.2010 18:20 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    Aha. V tom případě je jich 10 * 8 * 26!/19!, což je něco přes čtvrt bilionu...
    4.10.2010 16:54 detto
    Rozbalit Rozbalit vše Re: Python, program na variace
    A čo itertools ? Konkrétne permutations() a combinations().

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.