Svobodná historická realtimová strategie 0 A.D. (Wikipedie) byla vydána ve verzi 28 (0.28.0). Její kódový název je Boiorix. Představení novinek v poznámkách k vydání. Ke stažení také na Flathubu a Snapcraftu.
Multimediální server a user space API PipeWire (Wikipedie) poskytující PulseAudio, JACK, ALSA a GStreamer rozhraní byl vydán ve verzi 1.6.0 (Bluesky). Přehled novinek na GitLabu.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.2 a 20.04 OTA-12.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.0 otevřeného operačního systému pro chytré hodinky AsteroidOS (Wikipedie). Přehled novinek v oznámení o vydání a na YouTube.
WoWee je open-source klient pro MMORPG hru World of Warcraft, kompatibilní se základní verzí a rozšířeními The Burning Crusade a Wrath of the Lich King. Klient je napsaný v C++ a využívá vlastní OpenGL renderer, pro provoz vyžaduje modely, grafiku, hudbu, zvuky a další assety z originální kopie hry od Blizzardu. Zdrojový kód je na GitHubu, dostupný pod licencí MIT.
Byl představen ICT Supply Chain Security Toolbox, společný nezávazný rámec EU pro posuzování a snižování kybernetických bezpečnostních rizik v ICT dodavatelských řetězcích. Toolbox identifikuje možné rizikové scénáře ovlivňující ICT dodavatelské řetězce a na jejich podkladě nabízí koordinovaná doporučení k hodnocení a mitigaci rizik. Doporučení se dotýkají mj. podpory multi-vendor strategií a snižování závislostí na vysoce
… více »Nizozemský ministr obrany Gijs Tuinman prohlásil, že je možné stíhací letouny F-35 'jailbreaknout stejně jako iPhony', tedy upravit jejich software bez souhlasu USA nebo spolupráce s výrobcem Lockheed Martin. Tento výrok zazněl v rozhovoru na BNR Nieuwsradio, kde Tuinman naznačil, že evropské země by mohly potřebovat větší nezávislost na americké technologii. Jak by bylo jailbreak možné technicky provést pan ministr nijak nespecifikoval, nicméně je známé, že izraelské letectvo ve svých modifikovaných stíhačkách F-35 používá vlastní software.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 162 (pdf).
Sdružení CZ.NIC, správce české národní domény, zveřejnilo Domain Report za rok 2025 s klíčovými daty o vývoji domény .CZ. Na konci roku 2025 bylo v registru české národní domény celkem 1 515 860 s koncovkou .CZ. Průměrně bylo měsíčně zaregistrováno 16 222 domén, přičemž nejvíce registrací proběhlo v lednu (18 722) a nejméně pak v červnu (14 559). Podíl domén zabezpečených pomocí technologie DNSSEC se po několika letech stagnace výrazně
… více »Google představil telefon Pixel 10a. S funkci Satelitní SOS, která vás spojí se záchrannými složkami i v místech bez signálu Wi-Fi nebo mobilní sítě. Cena telefonu je od 13 290 Kč.
Myslím že je jeden z těch lepších, rozhodně lepší než ty ukázkové bláboly v učebnicích programování, nebo co je na wikipedii..
#! /usr/bin/python
def hide_column(c):
c[0][1] = c[1]
c[1][0] = c[0]
r = c[3]
while not r is c:
i = r[1]
while not i is r:
i[2][3] = i[3]
i[3][2] = i[2]
i[5][5] -= 1
i = i[1]
r = r[3]
def show_column(c):
r = c[2]
while not r is c:
i = r[0]
while not i is r:
i[2][3] = i[3][2] = i
i[5][5] += 1
i = i[0]
r = r[2]
c[0][1] = c[1][0] = c
root = []
root[:] = root, root
def solve(*chain):
c = root[1]
if c is root:
return solution(chain)
i = c[1]
while not i is root:
if i[5] < c[5]: c = i
i = i[1]
hide_column(c)
r = c[3]
while not r is c:
i = r[1]
while not i is r:
hide_column(i[5])
i = i[1]
solve(r, chain)
i = r[0]
while not i is r:
show_column(i[5])
i = i[0]
r = r[3]
show_column(c)
columns = {}
def move(row, *cols):
r = []
r[:] = r, r
for col in cols:
c = columns.setdefault(col, [])
if not c:
c[:] = root[0], root, c, c, col, 0
c[0][1] = c[1][0] = c
i = []
i[:] = r[0], r, c[2], c, row, c
i[0][1] = i[1][0] = i[2][3] = i[3][2] = i
c[5] += 1
r[0][1] = r[1]
r[1][0] = r[0]
if __name__ == '__main__':
from re import findall
def solution(chain):
m = {}
while chain:
i, chain = chain
m.update(i[4])
for row in range(9):
for col in range(9):
print m[row, col],
print
for row, col in enumerate(findall('\n(\S.+)', '''
ultra tezky?
2 8 5 . . . . . .
. 7 . . 2 5 . . 9
. . . . . . . . 4
1 9 . . . . . . .
6 . . . 9 . . 1 .
. . . 7 . 4 . 8 .
. . . 8 . 3 . . .
. . 3 6 . . . 4 .
. . . . . . 5 . .
''')):
for col, c in enumerate(findall('(\S+)', col)):
for c in c == '.' and range(1, 10) or (int(c),):
move({(row, col): c},
(row, col), # matrix
('R', row, c), # rows
('C', col, c), # columns
('B', row/3, col/3, c), # blocks
)
solve()
Tiskni
Sdílej:
Rychlost bohužel dost závisí na konkrétním sudoku, od sekund do několika minut :-/
root = [] root[:] = root, root
a == b místo a is b vede k zacyklení a chybě.
Už nevím, který film to byl, ani o čem byl, ale tohle praktikoval jeden vyhozený železničář.Knoflíkáři
He? To jak to sudoku riešite? Nikdy som nepotreboval vypĺňať možnosti. Vždy stačilo použiť základné znalosti (axiómy) a pravidlá, aby človek mohol vyplniť ďalšie číslo (odvodiť teorém). Ešte som sa nestretol so sudoku, kde by nefungovala čistá logika (čím nechcem povedať, že to občas nedá sakra zabrať) 
Jasné, že sa to dá riešiť backtrackom, ale je to de facto podvod
Určite je možný aj nasledujúci postup riešenia: náhodne vyplniť všetky políčka a potom overiť, či spĺňa pravidlá sudoku. Ale asi sa zhodneme, že okrem toho, že to nie je moc efektívne, tak to asi nie je to, o čom by riešenie sudoku malo byť
Sudoku, tak ako ho chápem ja, je o tom, že čisto na základe logiky (z už vyplnených čísel + pravidiel sudoku), si budujete a prehlbujete databázu znalosti o systéme (číslach, ktoré kde majú byť) a to tak dlho, kým nemáte všetko. Neviem to vyjadriť presnejšie, každopádne, žiadny backtrack netreba. Aj keď je jasné, že vo finálnych štádiách Vám to ten backtrack môže urýchliť, lebo namiesto premýšľania len tupo skúsite všetko vyplniť a ak to sedí, vyhrali ste, ak nie, tak správne je druhá možnosť. Ale ako hovorím, toto považujem za podvod. Alebo inak, nemá zmysel to riešiť týmto spôsobom, lebo backtrack Vám nič nedá, to je len tupé prechádzanie všetkých možností. To už rovno môžete to sudoku zadať počítaču. Tiež to bude subjektívne rýchlejšie a pohodlnejšie
Naopak, riešenie dedukciou trénujé úplne rovnaké schopnosti, aké sú potrebné napríklad v matematike pri dokazovaní teorémov. Sorry, že som sa trochu rozkecal 
Podľa mňa zadania sudoku sú robené tak, aby sa toto dalo. A moje stovky vyriešených sudoku mi to zatiaľ 100% potvrdili (nie je to dôkaz samozrejme
). V opačnom prípade sa tá úloha redukuje na prachsprostý backtrack, čo je úloha pre stroje a nie pre človeka...
Pletiete si dedukciu a indukciu. Odporúčam začať článkom na wikipédii
Pri dedukcii nejde o žiadne zvažovanie možností. Keď mám axióm A a pravidlo A -> B, tak viem odvodiť B. Takto môžem vybudovať inferenčne celú databázu znalostí o systéme (ak je konečný ako v prípade sudoku). Jasné, že pri konečnom systéme môžete použiť aj backtrack a na konci skúmať konzistenciu, alebo rôzne kombinácie oboch, ale o tom sudoku podľa mňa nie je.
Ok, skúsim. Ale IMHO musí to riešenie byť vždy dosiahnuteľné logickou úvahou (aspoň ak je skutočne jednoznačné). Dokázať toto tvrdenie ale asi nie je triviálne
Pozriem na wikipédiu, čo píše o sudoku 
Vcelku súhlasím.
Čo sa týka hranovej konzistencie, ja len tvrdím, že okrem elementárneho prípadu, kedy Vám zostane už len jedna možnosť, to nie je príliš užitočné. Aspoň mne to teda nikdy pri zložitejších sudoku nepomohlo. Môžete si na N miest napísať, že všade už sú len dve možnosti, ale čo z toho, keď Vám žiadna elementárna úprava už nič neeliminuje? Ja si skôr budujem iný znalostný systém, založený na tom, čo všetko už kde nemôže byť, napr., čo obsahuje daný stĺpec, alebo kde presne sa môže ešte vyskytovať množina čísel v danej bunke. Pomocou kombinácie týchto znalostí už som po dlhšej úvahe (a niekedy veľmi dlhej) obvykle schopný odvodiť ďalší fakt o systéme (nie nutne presnú pozíciu čísla, ale ďalšie obmedzenie na niektorý stĺpec, atď.). A s týmto systémom je mi úplne jedno, či mám niekde napísané, čo kde môže byť (teda, skôr by mi to tam prekážalo). Ale možno som len nepochopil, ako presne postupujete, to sa nedá vylúčiť 
To ani nie. Na niektoré tie fakty zabudnem, ale keďže sú znova odvoditeľné (vždy sa dajú úplne vybudovať z aktuálne vyplnených čísel) a raz sa mi to už podarilo, tak to zvládnem znova
Ale inak je pravda, že keď sa človek snaží niečo dlhšie odvodzovať, tak si to zapamätá. Tak si napríklad dodnes už roky pamätám dôkazy, ktoré som vymýšľal na skúške z analýzy (občas sme dostali dokázať niečo, čo sa tak úplne nebralo...) 
Aha, tak to ste popísali veľmi pekne. Keď tak nad tým rozmýšľam, tak moje odvodenia sa de facto tiež týkajú len zvyšovania poznatkov o tom grafe. Čiže naše postupy sú asi ekvivalentné. Aspoň teda formálne. Zvláštne ale je, že to vyplňovanie možností (párkrát som to už skúsal) mi vôbec nepomáha dostať sa ďalej. Asi mám holt mozog stavaný iným spôsobom a lepšie než s 50 políčkami a každým s niekoľkými možnými číslami, sa mi pracuje s väčšími celkami typu stĺpec. Ale skúsim niekedy nabudúce použiť znova Vašu metódu, keďže som na ňu získal teraz trochu nový uhol pohľadu.
Um, tak ten balíček z debianu už 2 roky nemá upstream. Tak som stiahol orig source a nefungovalo. Tá tvoja option -c je až v debian patchi 
Jj, tomu by som veril. Sudoku je úloha ako stvorená pre nejaký automated proof system 