Probíhá Meta Connect 2023. Společnost Meta představuje své novinky v oblasti AI a virtuální, smíšené a rozšířené reality. Představeny byly nové chytré brýle Ray-Ban | Meta a headset Meta Quest 3.
Eben Upton oficiálně představil (YouTube) nové Raspberry Pi 5 (YouTube). Je více než 2x výkonnější než jeho předchůdce, model 4B.
Byl vydán (YouTube) Counter-Strike 2. Nativně také pro Linux. Jedná se o největší technologický skok v historii této populární herní série.
Richard Stallman vystoupí v Praze s přednáškou Free Software And Your Freedom. V sobotu 30. září ve 14:30 na Pedagogické fakultě UK a v neděli 1. října v 18:00 hodin v rámci konference Hackers Congress Paralelní Polis.
Byla vydána verze 6 s kódovým název Faye linuxové distribuce LMDE (Linux Mint Debian Edition). Podrobnosti v poznámkách k vydání. Linux Mint vychází z Ubuntu. LMDE je postaveno na Debianu.
Byly publikovány informace o novém bezpečnostním problému pojmenovaném GPU.zip (paper, GitHub). S vlastním logem. Jedná se o možný útok postranním kanálem na grafickou kartu (GPU). Proces může "krást pixely" jinému procesu.
Projekt GNU dnes slaví 40. výročí. Přesně před čtyřiceti lety, 27. září 1983, Richard Stallman oznámil, že se chystá napsat s Unixem kompatibilní operační systém GNU (Gnu's Not Unix). Hlavní oslava a setkání hackerů probíhá ve Švýcarsku ve městě Biel/Bienne. Na programu je také přednáška Richarda Stallmana.
Byl vydán Mozilla Firefox 118.0. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Vypíchnout je nutno automatický lokální strojový překlad webových stránek. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 118 je již k dispozici také na Flathubu a Snapcraftu.
Byla vydána nová major verze 15.0.0 softwaru OCRmyPDF pro přidávání textové vrstvy k naskenovaným PDF dokumentům (PDF/A). Přehled novinek v poznámkách k vydání. OCRmyPDF využívá pro optické rozpoznávání znaků (OCR) engine Tesseract.
Karel Matějka zveřejnil druhé demo své chystané hry Bzzzt. Kromě verze pro Windows a macOS je dostupná i verze pro Linux. Plná verze hry má vyjít zanedlouho.
long long int a, b, x, y, k=0, i=1;
int main(){
scanf("%lld %lld %lld %lld", &a, &b, &x, &y);
FILE *s;
s = fopen("reseni.txt", "w+");
printf("\npostup: \n\n");
long long int z = a/100;
long long int p = z*i;
do{
if((a%x)==0 && (a%y)==0){
printf("Nalezeny pocet reseni: %lld\n", k);
k++;
}
if(a == p){
printf("jsem v %lld procentech", i);
i++;
}
a++;
}while(a != b+1);
printf("\n%lld\n\n", k);
fprintf(s, "%lld", k);
return 0;
}
na vstupu mam ziskat rozmezi cisel a-b a potom delitele x a y;
kdyz je nejake cislo z rozmezi a-b delitelne obema deliteli x a y, tk je k++;
jenze, kdyz je na vstupu rozmezi cisel A az B 858 miliard, tak to muj comp do konce zivota nestihne. Nevite, jak to podstatne urychlit?
diky za pomoc vsem!:D
Řešení dotazu:
k
má být počet čísel mezi a
a b
, které mají být dělitelné součinem x*y
, tak by to mělo být napřímo.k = b/(x*y)-a/(x*y)bez žádných cyklů. (tedy doufám, že v integer dělení
A/B
se mi fakticky provede floor(A/B)
tedy dostanu celočíselnou část toho podílu.)
a
a b
nemaji byt delitelna soucinem x*y
, ale soucasne cislem x
a y
. Tve reseni funguje tedy spravne pouze pro nesoudelna x
a y
. Spravne reseni by bylo k = b/lcm(x,y)-a/lcm(x,y)
long long int gcd (long long int a, long long int b) { if (!b) return a; return gcd(b, a % b); } int main (void) { long long int a, b, x, y, k, lcm; FILE *s; scanf("%lld %lld %lld %lld", &a, &b, &x, &y); s = fopen("reseni.txt", "w+"); lcm = x * y / gcd(x, y); k = b/lcm - a/lcm; printf("\n%lld\n\n", k); fprintf(s, "%lld", k); return 0; }
int i; for(i = 1; i*x*y < b; i++){ k++; }Samozřejmě ten kód nahoře není dokonalý a chce to ošetřit okrajové podmínky pečlivěji (např. inicializovat i tak, aby první výsledek vycházel do daného rozmezí), ale jako ukázka to stačí. Taky pozor na záporná x a y. P.S. trochu mi to smrdí školním domácím úkolem. Tak bych se nedivil, kdyby tě s tím někdo poslal do míst, kam slunce nesvítí.
for(i = ((a/x/y*x*y==a)?a/x/y:a/x/y+1); i*x*y < b; i++){
Tiskni
Sdílej: