Milyen algoritmussal lehetne a leghatékonyabban megoldani a következő problémát?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
De, hogy ezeket a pontokat hol tárolod, hogy ne keljen megismételni, az már ízlés kérdése.
Tehát ezt 1x kell megcsinálni és máris nem igaz a köbös ordó. :) A tárigénye meg nagy lesz.
Vagy csinálsz kis tárigényűt hosszú futás idővel. Dönsd el.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Nem is jól, becsültem nem is ordó köbös lesz, ez sokkal rosszabb.
Mivel konkrét limit meg van adva 500 esetén ennyi összegzést kell csinálni, a binomial a binomiális együtthatókat jelenti:
binomial(500,5) + binomial(500,4) + binomial(500,3) + binomial(500,2) = 255 244 687 600 .
Még lehet hogy ennél is több, este van már ezt végig gondolni.
Viszont ebben stimmel hogy binomial(500,5) féle képpen lehet 500 objektumból 5-öt kiválasztani, binomial(500,4) féle képpen lehet 500 objektumból 4-et kiválasztani ... és így tovább.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Igen erre én is gondoltam. Csak mondjál jobbat. Meg még tán ott van a párhuzamosítás.
De, ha ennyire benne vagy az ordóban, akkor találj polinom idejű algoritmust a SAT3 problémára. :)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
A párhuzamosítás nem játszik, lényegében ugyanolyan lassú attól még. O(a) = O(a/c).
Van közelítő módszer, nem pont erre írja, de erre is kell lennie : [link]
Volt valami olyan közelítő algoritmus ami legrosszabb esetben is 2x rosszabb mint az optimális, de cserébe polinom idejű. Már rég volt az egyetemen, nem találom már melyik volt az.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
#17
Ha tényleg max 500 lehet, akkor nincs értelme optimalizálgatni 2023-ban, mert gyorsan kiszámolja még egy gyenge gép is.
Ha fontos lenne mégis valamit kitalálni, akkor este szívesen segítek munka után, mert nagyon érdekes problémának találom:) meg van egy matek bsc-m proginfó mellett, szóval csak kitalálunk valamit majd:D és tényleg nagy pacsi, mert legalábbis számomra ez egy nagyon érdekes probléma, amit nem tűnik triviálisnak optimalizálni.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
"Ha tényleg max 500 lehet, akkor nincs értelme optimalizálgatni 2023-ban, mert gyorsan kiszámolja még egy gyenge gép is."
Mint ahogy tegnap írtam látszik, hogy százmilliárdos nagyságrendű a műveletigénye. Ténylegesen valamilyen konstansfaktorosszor több lesz. Ez konkrétan órákba is telhet. Bár nem tudom mit értesz az alatt, hogy mi az a gyors, mivel nem egy egzakt fogalom hogy gyors.
"Ha fontos lenne mégis valamit kitalálni, akkor este szívesen segítek munka után, mert nagyon érdekes problémának találom:) meg van egy matek bsc-m proginfó mellett"[...]
Te ezek szerint akkor jobban benne vagy mint én, mert én már régen tanultam és nem foglalkoztam aztán vele.
[...]"a számok x y és z helyen álló számok összege a kívánt értékhez a legközelebbi?"
Érdekes módon ezt senki nem jegyezte meg : Milyen metrika szerint? Azaz milyen távolságfüggvény szerint? 3 dimenziós térben értelmezett Euklideszi távolság szerint? Vagy ( abs(x) , abs(y) , abs(z) ) számhármas lexikografikus rendezési relációja szerint? Vagy ... ?
További kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!