V San José probíhá vývojářská konference NVIDIA GTC 2024. CEO společnosti NVIDIA Jensen Huang měl dvouhodinovou keynote, ve které představil celou řadu novinek: NVIDIA Blackwell platform, NVIDIA NIM microservices, NVIDIA Omniverse Cloud APIs, Project GR00T, …
Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.
Od 21. do 23. března proběhnou Arduino Days 2024. Sledovat bude možné oficiální streamy. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.
Letošní ročník konference LinuxDays se uskuteční o víkendu 12. a 13. října, opět se potkáme v pražských Dejvicích na FIT ČVUT. Také během letošního ročníku nás budou čekat desítky přednášek, workshopy, stánky a spousta doprovodného programu. Aktuální dění můžete sledovat na Twitteru, Facebooku nebo na Mastodonu, přidat se můžete také do telegramové diskusní skupiny.
Byla vydána nová major verze 2.0.0 a krátce na to opravné verze 2.0.1 open source online editoru Etherpad (Wikipedie) umožňujícího společné úpravy v reálném čase.
Matematický software GNU Octave byl vydán ve verzi 9.1.0. Podrobnosti v poznámkách k vydání. Nově je preferovaný grafický backend Qt a preferovaná verze Qt 6. V tomto vydání byly přepracovány funkce pro převod čísel z desítkové soustavy. Jako obvykle jsou zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu březnový souhrn novinek. Vypíchnout lze, že pracují na virtuálním asistentu PineVox a zatím bezejmenných sluchátkách na lícní kosti (bone conduction).
Hyprland, kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, je již dva roky starý. Při té příležitosti byla vydána verze 0.37.0 (a záhy opravná 0.37.1 řešící chybu ve vykreslování oken). Nově závisí na knihovně hyprcursor, která poskytuje škálovatelné kurzory myši.
Geolokační služba Mozilla Location Service, kterou používá množství svobodného softwaru (často přes Geoclue), letos skončí. Data budou dostupná pouze do 10. dubna 2024, API klíče třetích stran budou odstraněny 12. června. Příčinou je údajné porušení patentů firmy Skyhook v roce 2019, následná dohoda omezila rozvoj MLS.
while ( ('select count(cis) from db') < x ) { cislo = rand if ( ('select count(cis) from db where cis=cislo') == 0 ) { VlozCisloDoTabulky (cislo) } }Jak rikam, neni to ani nahodou optimalni reseni, je to jen takovy napad.
n
mist rotovat...A - 1, B - 2, C - 3, D - 4, F - 5, G - 6A dalsi poradi zacnu generovat, tak aby nebyla hned vedle sebe
A - 3, B - 4, C - 1, D - 2Tak mi pro zadovniky F a G zbyla pouze 5 a 6 pozice a to by bylo hned vedle minule pozice a tim to porusi zadani
DATA: - array_of_positions = array( runner => position ); // generate positions for the first loop * FOR (i) IN 1 TO {x}: * DO * generate new valid position by random -> (p) * WHILE position (p) is occupated (array_of_positions) * (array_of_positions)[(i)] = (p) * DONE (first_loop_positions) <- (array_of_positions) // generate positions for second loop * FOR (i) IN 1 TO {x}: * DO * generate new valid position by random between ( (first_loop_positions)[i] - {n / 2} ) and ( (first_loop_positions)[i] + {n / 2} ) -> (p) // constraint: valid bounds * WHILE position (p) is occupated (array_of_positions) * (array_of_positions)[(i)] = (p) * DONENotes:
Nevím, kde se ta vaše úloha vzala, napadají mne tři možnosti. Buď je to do školy, na kšeft, nebo jste přecenil své síly a slíbil kamarádům vyrobit něco, co nezvládáte. Ať je to tak nebo tak, připadá mi váš postup morálně pochybený. Vaše reakce na příspěvek Lukáše Ramlicha je pak naprosto neomalená (nemluvě o tom, že je vinou vaší lenosti skoro nečitelná).
Doufám, že snesete mou upřímnost. Pokud ne, nedá se nic dělat…
ale nevim kde ste na to prisel,ale urcite neco vymyslite abyste se do me mohl navazet
Ó, běda. Jsem odhalen. Jediný důvod, proč chodím na ABCLinuxu, je ten, abych se do vás mohl navážet…
ja nejake sve reseni mam,ale nestaci na to abych udelal co potrebuji. programovani me osobne problem nedela,ale nedokazu tento priklad logicky vymyslet. prevedeni do jakohokoliv jazyka uz je druha cast.
Ale to právě je podstata programování. Vymyslet vhodnou reprezentaci dat a algoritmy pro práci s nimi. Ne v tom, kam napsat středník nebo složenou závorku. Naučit se syntaxi programovacího jazyka zvládne kdokoli, podstatné je umět ten jazyk používat. Když se naučíte francouzská slovíčka, nestanete se tím Balzacem nebo Villonem; koupíte-li si kopačky, nestává se z vás tím fotbalista… Vám chybějí základy algoritmického uvažování a to se nedá spravit radou ve fóru, to chce studium.
jinak se nedivim ze tady tolik vysilujete s tim co kdo umi nebo ne. ale vy na tom o moc lip nebudete
Sice netuším, na základě čeho jste to usoudil, ale na tom nezáleží. Nevzpomínám si, že bych mezi svými klienty měl někoho s vaším jménem, takže je mi celkem jedno, co si o mých schopnostech myslíte.
protoze mistot ztraceni castu tim co zde pisete jste mi mohl poradit. casu by to zapralo uplne stejne, jen to chce mit v hlave v poradku abyste to mohl napsat.
To je otázka přístupu. Za ztracený čas bych totiž považoval spíše to, kdybych se vám psal s řešením. Protože jediný efekt by byl ten, že byste zjistil, že tohle je dobrý způsob, jak na problémy "řešit" a až byste příště potřeboval zase něco naprogramovat, hodil byste to zase na fórum. A jinak se na ten dotaz odpovědět nedá, leda: "Jděte a studujte."
Všimněte si ale jedné maličkosti: přestože jsem váš dotaz považoval za nevhodný, nijak jsem na něj nereagoval. Nechal jsem to být, ať si každý sám rozhodne, zda chce vaši práci dělat za vás. Ozval jsem se teprve v okamžiku, kdy jste se neurvale obořil na kolegu, který vás slušně upozornil, že ten dotaz se do fóra nehodí.
Nejsem si jist, zda chápete, kdo je tu mimo.
Ti, co něco umí, něco pochopit těžko nedokážou.
všechna pole náhodně promíchám...
ja nejake sve reseni mam,ale nestaci na to abych udelal co potrebuji. programovani me osobne problem nedela,ale nedokazu tento priklad logicky vymyslet. prevedeni do jakohokoliv jazyka uz je druha cast.Myslim, ze programovani je hlavne o tom " to logicky vymyslet". To ze v tomhle jazyce se podminka dela tak, v tomhle se cyklus dela onak a syntaxe jineho je uplne odlisna, to ze tenhle jazyk dovoluje ukazatale nebo kerursi a tenhle ne, je vec dle meho nazoru vedlejsi.. Naucit se to je jako naucit se jakykoliv jiny jazyk. Treba madarstinu. Ale k programovani to nestaci.
2D-1
(D je minimální požadovaná vzdálenost mezi pozicemi, D>0). V dalším umisťování je to dokonce až dvakrát tolik, tedy 10 (4D-2
).
Algoritmus tedy musí brát v úvahu, že každý závodník má omezený počet pozic. Navrhoval bych tedy u každého evidovat kolik pozic mu ještě zbývá a při každém generování kromě prvního jim pozice přidělovat v pořadí podle počtu možností. Myslím že rozvinutím úvahy v předchozím odstavi půjde dokázat, že pro určitý maximální počet startů S bude vždy možné všem závodníkům přiřadit pozici. Pak nebude potřeba provádět rollback (tedy začínat znova). Možná ale že nic takového dokázat nejde. Skutečně nemám čas to příliš rozebírat...
Je zde jednodušší alternativa: vygenerovat náhodně jen první pozice, pro další starty provádět jen rotaci. V nejjednodušším případě, tedy rotace o D, musí platit podmínka že D+D*(S-1) = D*S <= N
(závodník co začíná na pozici D musí po S-1 posunech skončit nejdále na poslední pozici). Toto by ale závodníci rychle prohlédli a asi by se jim to nelíbilo.
Složitější bezpečná varianta je provádět posuny o náhodnou hodnotu z intervalu <D,(N-D)/(S-1)>
(oboje včetně). Opět je zajištěno, že ani v nejhorším případě nedojde k vygenerování nepřijatelné startovací listiny (cvičení: dokažte .
Problém obou rotačních řešení je, že jednotlivé startovací listiny nejsou navzájem nezávislé - tedy, zjednodušeně, nejsou "opravdu náhodné". Samozřejmě že po jejich vygenerování je nutno je navzájem zamíchat.
Nejlepší bude hybridní řešení: Nejprve zkusit startovací listiny generovat náhodnými pokusy a zavrhováním špatných výsledků. Počet pokusů však omezit nějakým empiricky zjištěným rozumným číslem (třeba 100). Pokud počet pokusů vyprší aniž by bylo vygenerování S použitelných listin, použije se výše zmíněný rotační algoritmus.
PS: Doufám že to bude užitečné... A hlavně doufam že jsem nikde neudělal botu a nepíšu ptákoviny.
"Zdlouhavé" ani tak nevadí, pokud ta doba je nějak rozumně omezena, a hlavně pokud je vůbec deterministicky omezena. Náhodně generovat hodnoty tak dlouho, dokud se nevygeneruje akceptovatelná hodnota není dobrý algoritmus. Mám s tím vlastní, špatné zkušenosti.
bouzel se da predpokladat ze v kazdem pripade bude vygenerovani takoveto rady cisel s jistou zavilsosti velmi zdlouhave.
Problém tedy nebude ani v další iteraci algoritmu, protože odeberu hrany párování a zakážu další hrany, každý vrchol bude mít zase stupeň alespoň nějaké n (kladné při rozumně zvoleném k) a nějaký podraf na N vrcholech bude zase silně n-regulární.Toto je sice hezké, ale vůbec to neodpovídá na otázku. Jenom se důkaz přesouvá na nějaké "rozumně zvolené k, kdy každý uzel bude mít stupeň kladný". Takže jsme pořád tam, kde jsme začali.
Blábolením jsem myslel povídačky o špatných a dobrých algoritmech. Krom toho tohle je krásný případ úlohy, která pravděpodobnostním algoritmem řešit jde.Aha. Prosím osvětlit, rád se poučím.Náhodně generovat hodnoty tak dlouho, dokud se nevygeneruje akceptovatelná hodnota není dobrý algoritmus.
Prostě, když budu zakazovat jiným způsobem - sportovci jsou rozmístěni jakoby na kružinici (1 až N, n-tý a první jsou sousedé) a každému zakážu mít pozice v k-okolí. Takže z grafu odeberu 2k hran každému vrcholu, tedy bude (N-2k)-regulární. To jsem tedy zakázal moc, prvních a posledních k jich má zakázáno víc. Tak tam ty hrany odebrané navíc zase vrátím. Nyní už ale každý vidí, že mám ten (N-2k)-regulární podgraf a mám zajištěnou existenci PP, pokud k < N/2. Pokud chci pokračovat do další iterace musí být k < N/4.Teď vidím že jsem to zadání pochopil trochu jinak, já počítal vzdálenost pozic, ne lidí... i když to je evidentní blbost :-/
Tiskni Sdílej: