Ú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 utanamSzerk: 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
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Formula-1
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Mibe tegyem a megtakarításaimat?
- Házimozi haladó szinten
- sziku69: Szólánc.
- Peter Kiss: Somogyi internet rádió INR 5000/BK
- Átlépi végre az iPhone az 5000 mAh-t?
- iPhone topik
- Android alkalmazások - szoftver kibeszélő topik
- A fociról könnyedén, egy baráti társaságban
- További aktív témák...
- BESZÁMÍTÁS! LENOVO Ideapad Gaming 3 notebook - i5 11320H 16GB DDR4 256GB+1TB SSD GTX 1650 4GB WIN11
- KÖZEL FÉLÁR! Apple Magic Keyboard, Mouse, Trackpad, Pencil, Smart Magic Keyboard Folio, Watch szíjak
- Telefon felvásárlás!! Samsung Galaxy A50/Samsung Galaxy A51/Samsung Galaxy A52/Samsung Galaxy A53
- 138 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
- Több Lenovo Thinkpad x1 carbon gen 4 / 5 / 6 / 7 X1 Yoga gen3 6-9. gen i7, i5 procik
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest