•AlexandruValeanu
|
 |
« Răspunde #150 : Aprilie 13, 2013, 16:56:02 » |
|
Am si eu o curiozitate daca N < 1000 si M < N*N este mai buna varianta N*N sau cea MlogN ( teoretic cea N*N ) e mai buna pe cazul maxim nu?
|
|
|
Memorat
|
|
|
|
•klamathix
|
 |
« Răspunde #151 : Aprilie 13, 2013, 17:04:49 » |
|
Da, pe grafuri dense brutul bate M log N-ul. La fel si Prim-ul in N ^ 2 bate ceilalti algoritmi de APM 
|
|
« Ultima modificare: August 07, 2014, 15:12:29 de către Mihai Calancea »
|
Memorat
|
|
|
|
•AlexandruValeanu
|
 |
« Răspunde #152 : Aprilie 13, 2013, 17:13:25 » |
|
Mersi mult de raspuns
|
|
|
Memorat
|
|
|
|
•Flameingo
Strain
Karma: 0
Deconectat
Mesaje: 9
|
 |
« Răspunde #153 : August 18, 2013, 20:24:31 » |
|
spuneti-mi va rog de ce sursa asta http://www.infoarena.ro/job_detail/985164?action=view-source are TLE pe 5 teste? folosesc o coada de prioritate in loc de heap, iar daca inlocuiesc priority_queue-ul cu un queue simplu intra in timp. Multumesc anticipat
|
|
|
Memorat
|
|
|
|
•SebiSebi
|
 |
« Răspunde #154 : August 18, 2013, 21:17:22 » |
|
Tu iei TLE deoarece incerci sa relaxezi muchiile incidente unui nod de mai multe ori. Foloseste un vector caracteristic. Iar atunci cand inlocuiesti coada de prioritati cu o coada normala, tu de fapt faci Bellman Ford.
|
|
« Ultima modificare: August 19, 2013, 09:56:27 de către Pirtoaca George Sebastian »
|
Memorat
|
|
|
|
|
|
•AlexandruValeanu
|
 |
« Răspunde #157 : August 27, 2013, 17:24:54 » |
|
Asta pentru ca poate a fost imbunatatit compilatorul...
|
|
|
Memorat
|
|
|
|
•AlexandruValeanu
|
 |
« Răspunde #158 : August 28, 2013, 17:17:43 » |
|
Am si eu o nelamurire: Dijkstra cu costuri mici implementat ca in articolul din GInfo ia 70p cu 3 TLE. Daca scot functia de stergere din vechea lista ( ceea ce teoretic este o greseala ) ia 100p. Asa ar trebui sa se intample sau nu sunt propuse testele astfel incat astfel de solutii sa nu ia 100?
|
|
|
Memorat
|
|
|
|
•Sapientia
Strain
Karma: 0
Deconectat
Mesaje: 29
|
 |
« Răspunde #159 : Octombrie 29, 2013, 22:16:33 » |
|
Killed by signal 11(SIGSEGV)-Ce semnifica mesajul ?
|
|
|
Memorat
|
|
|
|
|
|
•mirceadino
Strain
Karma: 13
Deconectat
Mesaje: 13
|
 |
« Răspunde #162 : Martie 01, 2014, 06:32:48 » |
|
Citeste cu atentie restrictiile problemei 
|
|
|
Memorat
|
|
|
|
•jumper007
Strain
Karma: -1
Deconectat
Mesaje: 6
|
 |
« Răspunde #163 : Martie 01, 2014, 15:05:33 » |
|
Restrictii 1 ≤ N ≤ 50 000 1 ≤ M ≤ 250 000 Lungimile arcelor sunt numere naturale cel mult egale cu 1 000. Pot exista arce de lungime 0 Nu exista un arc de la un nod la acelasi nod. Daca nu exista drum de la nodul 1 la un nod i, se considera ca lungimea minima este 0. Arcele date in fisierul de intrare nu se repeta. Deci, eu afisam INT_MAX pentru drumurile care nu exista, acum afisez 0 in schimb, dar tot nu primesc punctele 
|
|
|
Memorat
|
|
|
|
•PlayLikeNeverB4
|
 |
« Răspunde #164 : Martie 01, 2014, 15:26:35 » |
|
Nu ar trebui sa extragi intai nodurile cu distanta cea mai mica?
|
|
|
Memorat
|
|
|
|
•jumper007
Strain
Karma: -1
Deconectat
Mesaje: 6
|
 |
« Răspunde #165 : Martie 01, 2014, 16:58:26 » |
|
Ah scuze, țin minte că scrisesem acea parte, dar cred că am șters-o ieri din greseală.. Mersi 
|
|
|
Memorat
|
|
|
|
|
|
•johny
Strain
Karma: -1
Deconectat
Mesaje: 6
|
 |
« Răspunde #168 : Aprilie 17, 2014, 19:42:11 » |
|
Multumesc pentru ajutor, Alexandru! Am gasit de unde era eroarea: obiectele queue sunt alocate ineficient.
|
|
|
Memorat
|
|
|
|
•witsel
Strain
Karma: 0
Deconectat
Mesaje: 15
|
 |
« Răspunde #169 : August 07, 2014, 12:06:15 » |
|
scz ca intreb, dar ce inseamna INF=1 << 30;??
|
|
|
Memorat
|
|
|
|
•visanr
|
 |
« Răspunde #170 : August 07, 2014, 12:35:25 » |
|
1 << 30 = 2 30Ai aici un articol unde sunt explicate operatiile pe biti
|
|
|
Memorat
|
|
|
|
•depevlad
Strain
Karma: 13
Deconectat
Mesaje: 32
|
 |
« Răspunde #171 : Martie 24, 2015, 18:17:26 » |
|
Am facut pentru problema asta 2 surse, una in care am folosit algoritmul lui Dijkstra "ca la carte", si una in care faceam un fel de bfs - bagam un element in coada, ma duceam la toti vecinii, iar daca distanta noua pana la vecini este mai mica decat distanta veche, reintroduceam vecinul in coada si recalculam. A doua sursa a luat, neasteptat, tot 100 pct. Ba chiar a obtinut timpi mai buni de executie, in medie, decat abordarea clasica cu Dijkstra. Cum e posibil acest lucru, nu ar trebui sa aiba o complexitate mai mare, care trage spre n patrat?  As aprecia mult daca m-ar ajuta cineva sa inteleg cum sursa aparent mai proasta o depaseste pe cea cu Dijkstra. Iata cele doua surse si borderourile de evaluare: 1. Dijkstra: http://www.infoarena.ro/job_detail/1399323 - borderou http://www.infoarena.ro/job_detail/1399323?action=view-source - sursa 2. BFS: http://www.infoarena.ro/job_detail/1399062 - borderou http://www.infoarena.ro/job_detail/1399062?action=view-source - sursa. Multumesc anticipat 
|
|
|
Memorat
|
|
|
|
|
•Sagunistu
Strain
Karma: 0
Deconectat
Mesaje: 7
|
 |
« Răspunde #173 : Martie 26, 2015, 13:57:35 » |
|
Dijkstra are complexitate O(M*logN), iar Bellman-Ford are O(M*N). Bellman Ford cu coada, asa cum l-ai facut tu, are aceeasi complexitate O(M*N), dar in practica e la fel de bun ca Dijkstra. Practic, niciodata nu o sa faca N*M pasi. Bellman-Ford e util cand ai costuri negative pe muchii, deoarece atunci Dijkstra nu merge.
|
|
|
Memorat
|
|
|
|
•mouse_wireless
Strain
Karma: 2
Deconectat
Mesaje: 13
|
 |
« Răspunde #174 : Mai 28, 2015, 00:19:44 » |
|
In "indicatiile" problemei scrie ca o rezolvare cu set va lua doar 80 de puncte dar eu am trimis cu set si am luat 100  .. si nu m-am chinuit prea mult cu optimizari. Poate ar trebui redusa un pic limita de timp?
|
|
|
Memorat
|
|
|
|
|