Byla vydána beta verze Linux Mintu 21.3 s kódovým jménem Virginia. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze Cinnamon 6.0 s experimentální podporu Waylandu. Linux Mint 21.3 bude podporován až do roku 2027.
Pavel Bašta se v příspěvku Internetové kšefty podíval na podvody při nákupech a prodejích zboží přes různé bazarové služby. Podělil se o rozhovor, který vedl s jedním podvodníkem. V závěru upozorňuje na databází podvodníků Podvod na bazaru.
Michal Strehovský na svých stránkách píše jak v C# vytvořit "bootovací hru" pro Raspberry Pi, tj. hru, která nepotřebuje operační systém (bare-metal). Zdrojové kódy jsou na GitHubu.
Greg Kroah-Hartman vydal Linux 6.6.6 (LKML) aneb Linux s číslem šelmy. Řeší regresi ve Wi-Fi.
Debian 12.3 byl kvůli chybě v jádře 6.1.64-1 nakonec přeskočen. Vydán byl rovnou Debian 12.4.
Počítačové hře Doom je dnes 30 let. Vydána byla 10. prosince 1993. Zahrát si ji lze také na Internet Archive.
V srpnu společnost HashiCorp přelicencovala "své produkty" Terraform, Packer, Vault, Boundary, Consul, Nomad a Waypoint z MPL a Vagrant z MIT na BSL (Business Source License). V září byl představen svobodný a otevřený fork Terraformu s názvem OpenTofu. Na konferenci Open Source Summit Japan 2023 byl představen (YouTube) svobodný a otevřený fork Vaultu s názvem OpenBao (GitHub).
Na dnes plánované vydání Debianu 12.3 bylo posunuto. V jádře 6.1.64-1 v souborovém systému ext4 je chyba #1057843 vedoucí k možnému poškození dat.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek i s náhledy aplikací v Týden v GNOME a Týden v KDE.
Tak od ledna linuxové terminály, výchozí pozadí i celé desktopy v barvě "broskvového chmýří", v barvě "jejíž všeobjímající duch obohacuje mysl, tělo i srdce". Barvou roku 2024 je PANTONE 13-1023 Peach Fuzz.
Řešení dotazu:
nakopnuti:
bud nahodny vyber z pole/monziny, kde pocet vyskytu nejakeho prvku je umerny vaze prvku
nebo udelat nejakou prevodni funkci
int prvky[N],vahy[N]; int rnd2index(int rnd) { int i,tmp = 0; for(i=0;i<N;i++) if((tmp+=vahy[i])>=rnd) break; return i; }
rnd
je generovano od 0
do suma(vahy)
vlastne od 1
do suma(vahy)
nebo nahradit >=
za >
a pak od 0
do suma(vahy)-1
hm je tam chyba ...
oprava:
int prvky[N],vahy[N]; int rnd2index(int rnd) { int i,tmp = 0; for(i=0;i<N;i++) { tmp+=vahy[i]; if(tmp>rnd) break; } return i; }
no myslel jsem to nejak takhle:
#include <stdio.h> #include <stdlib.h> #include <time.h> int suma(int j, int* p) { int i=0,tmp=0; for(;i<j;i++) tmp += *(p+i); return tmp; } int weightedrnd(int j, int* values, int* weights) { int i=0,tmp=0,sum=suma(j, weights),rnd=rand(); for(;i<j;i++) { tmp += weights[i]; if(tmp>rnd%sum) break; } return *(values+i); } int main(int argc, char** argv) { int i,*v,*w; if (argc<=2 || !argc%2) return -1; int n = argc/2-1; v = (int*) malloc(sizeof(int)*n); w = (int*) malloc(sizeof(int)*n); for(i=0;i<n;i++) { v[i] = atoi(argv[i*2+2]); w[i] = atoi(argv[i*2+3]); if (w[i]<=0) { free(v); free(w); return -2; } } /*for(i=0;i<n;i++) printf ("v:%d w:%d\n", v[i], w[i]);*/ srand(time(NULL)); for(i=0;i<atoi(argv[1]);i++) printf ("%d ", weightedrnd(n,v,w)); free(v); free(w); return 0; }
Tiskni
Sdílej: