Új hozzászólás Aktív témák
-
Domonkos
addikt
válasz
summers
#7650
üzenetére
Ez majdnem egy az egyben az utazo ugynok problema - nincs ra polinomialis ideju algoritmus.
Ha megis talalnal, akkor kuldj privatot - nagyon sok penzt fizetek erte
Brute force modszerrel meg nem erdemes elindulnod mert ~4840000000000000000000000000000000000000000000000000000 Joule energiara lesz szukseged hozza 70 ponthoz... Ez pedig sok. Ertelmes kozelitest viszont adhatsz.
-
Domonkos
addikt
Koszonom, ezzel tisztaban vagyok.
Par rovid merest elvegezve ezek jottek ki nalam. 10-10 futas atlagolva:
Kiiras terminalba (kis bufferrel): 2.291s
Kiiras terminalba (megfeleloen bufferelve): .592s
Kiiras normal fileba, SSD-re: .157s
Kiiras a /dev/null-ba: .146s
A programot ujraforditva, a kiiras reszt elhagyva: .017s (!!!)Ebbol jol latszik, hogy itt nem a permutalgatason fog elmenni az ido. Az utolso tesztbol pedig az, hogy a program idejenek csupan az 1/8 resze a "lenyegi resz". A maradek idot a kiiras is a kiiras formazasa viszi el. Szoval annyival egeszitenem ki, hogy persze nem mindegy, hogy hova irod, de az sem mindegy, hogy egyaltalan kiirsz-e valamit
Egy ugyanakkora nagysagrendet meg tudsz sporolni azzal is, ha teljesen elhagyod a kiiratast, mint amilyet akkor, amikor lassu outputrol gyorsra valtasz 
Aki nem hiszi, implementalja utanam
Szerk: Annyit hozzatennek, hogy a kiiras elhagyasakor otletem sincs, hogy a fordito pontosan milyen ordogi optimalizaciokat eszkozolt, amit akkor nem tett, amikor siman kiirattam. Ennek kideriteset kicsit kesobbre hagyom. Amit az ugy erdekeben tettem, hogy argv-bol olvastam az inputot es abba az agba amit kiirataskor el lehetett hagyni raktam egy szamlalot. Igy talan nem optimalizal annyit - de ennel jobban nem melyedtem bele...
-
Domonkos
addikt
A futasido a tomb meretevel valoban !-os aranyban lesz, viszont ezt valahogy el is varna az ember, leven hogy pont ugyanennyi outputot szeretne. A jo dolog viszont az, hogy normalis implementacio mellett, 10 elemre ez szinte semmi. Gyors implementalva a 3628800 sor kiiratasahoz nem kell .5s-nel tobb ido; ha pedig elhagyom a kiiratast, akkor .2s alatt vegez az osszes permutacioval. Kulcsszo a melysegi bejaras / backtrack.
Es a memoria miatt sem kell aggodni... -
Domonkos
addikt
válasz
alratar
#7571
üzenetére
Elso ami beugrik, hogy lehet elfelejted bezarni a file-t es mivel az bufferelt, igy az utolso par sor bennragadhat a bufferben. Nezdd meg hogy bezarod-e a filet es hogy ha igen, akkor tenyleg bezarodik-e!

Vagy ha explicit ra tudsz hivni valami flush-re, akkor hiv ra kiiras utan, kilepes elott. Kerlek ne kerdezd hogy hogyan kell, mert ruhellem ezt a nyelvet
-
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung Galaxy Watch 5 Pro
- Erős Gamer PC i7-9700K RTX 3060 12GB 16GB Trident Z 850W Gold NZXT H510 Flow
- iPad Pro 11" 2018 256GB Wifi 92% akku Csere is
- Apple iMac 21,5" 2015 Late / 8GB DDR3 / 1TB HDD / Bill+Egér 6 hó garancia, számlával!
- Honor MagicPad 2 12.3 " Elképesztően jó tablet , újszerű , 1,5 év Garanciával !
- AKCIÓ! 100/100 - 0Perc - WD BLACK SN850P 1TB - Playstation 5
- 16 GB (2x8 GB) ADVANTECH 3200 MHz
- AKCIÓ! Apple iPad Pro 13 M5 1TB Wifi tablet garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- Új állapotban! Lenovo ThinkPad T14 Gen 3 i5-1245/16gb ram/256 ssd FHD+ garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Egy ugyanakkora nagysagrendet meg tudsz sporolni azzal is, ha teljesen elhagyod a kiiratast, mint amilyet akkor, amikor lassu outputrol gyorsra valtasz 


