|
Titlul: 461 Sate Scris de: Adrian Diaconu din Iunie 25, 2007, 16:19:34 Aici puteţi discuta despre problema Sate (http://infoarena.ro/problema/sate).
Titlul: Răspuns: 461 Sate Scris de: Sima Cotizo din Iunie 26, 2007, 10:54:54 Am vazut prin alte topicuri ca un BF iese din timp... daca e facut cu o coada alocata de la bun inceput nu sunt prob, fara parsare ;) ... eu cel putin nu la asta am probleme...
Ci primesc cate un WA la un singur test din grupuri... nu-mi prea dau seama ce cazuri de exceptie exista ... ??? Titlul: Răspuns: 461 Sate Scris de: Filip Cristian Buruiana din Iunie 26, 2007, 11:04:50 Incearca pe teste de genul:
Cod: 1000 4 5 10 Raspunsul trebuie sa fie 10. Titlul: Răspuns: 461 Sate Scris de: Sima Cotizo din Iunie 26, 2007, 11:47:39 Multumesc frumos, acu da :) ... adica na, ca de obicei vechea greseala... citeste relatiile pana la n nu pana la m ... :fool:
Titlul: Răspuns: 461 Sate Scris de: Casu-Pop Bogdan din Februarie 08, 2008, 12:26:58 mie imi pica un test cu TLE si am implementat un O (N+M). voi ce tip de liste folositi, k eu am lucrat cu "vector <long>" din STL :-k
Titlul: Răspuns: 461 Sate Scris de: Ionescu Vlad din Februarie 08, 2008, 16:18:54 Ai grija sa opresti cautarea (break, return) cand ai ajuns la solutie.
Titlul: Răspuns: 461 Sate Scris de: Casu-Pop Bogdan din Februarie 08, 2008, 16:34:35 nop...nu de aici e problema...am conditiile bine puse..cred k e de la timpu de acces la lista
Titlul: Răspuns: 461 Sate Scris de: Andrei Grigorean din Februarie 08, 2008, 18:57:26 La problema asta nu e indicat sa folosesti STL. Merge mai greu decat alte modalitati de retinere a grafului. Incearca implementarea lui Radu Berinde cu vectori alocati dinamic: http://infoarena.ro/multe-smenuri-de-programare-in-cc-si-nu-numai
Titlul: Răspuns: 461 Sate Scris de: Gabriel Bitis din Februarie 08, 2008, 21:58:45 Mie mi'a intrat frumos cu liste. http://infoarena.ro/job_detail/133446
Acelasi algoritm, folosind STL iesea din timp pe un test. Titlul: Răspuns: 461 Sate Scris de: George Popoiu din Noiembrie 12, 2009, 21:28:03 Nu inteleg, eu reprezint problema cu un graf neorientat si retin si costurile de la nodul i la j, si mie imi da si pe foaie ca de la 1 la 11 , costul este 44. Unde gresesc?
Titlul: Răspuns: 461 Sate Scris de: Gabriel Bitis din Noiembrie 13, 2009, 09:17:57 Citat Satele sunt asezate in ordine, de la stanga la dreapta, conform numerelor care le identifica. Inseamna ca daca ai un drum de la x la y de costul c, cand parcurgi x -> y, trebuie sa aduni costul, iar cand parcurgi y -> x il scazi.1->7 : +10 7->5 : -4 5->8 : +8 8->6 : -5 6->4 : -4 4->11 : +13 ---- +18 Titlul: Răspuns: 461 Sate Scris de: Mihai-Alexandru Dusmanu din Martie 31, 2010, 12:12:21 cred ca puteti sa folositi STL ptr ca merge foarte bine... http://infoarena.ro/job_detail/430808
Am folosit si queue( BFS) si vector( liste) Titlul: Răspuns: 461 Sate Scris de: Alexandru-Iancu Caragicu din Martie 04, 2011, 17:46:09 "trebuie determinata distanta intre satele X si Y, daca acest lucru este posibil."
"Intotdeauna va putea fi determinata distanta dintre X si Y pe baza informatiilor primite" ? Titlul: Răspuns: 461 Sate Scris de: Andrei Ilisei din Martie 17, 2011, 01:06:28 prin STL cred ca depinde de implementare si de mici optimizari.. de exemplu stiu ca cineva a luat 100 dupa ce a micsorat dimensiunea vectorilor cu 1 sau 2
btw.. eu inca sunt uimit ca functioneaza: job #482680 si are si un timp foarte bun. pe testul pe care luam TLE fac acum 52 ms (sursa mea: job #557996 ) Titlul: Răspuns: 461 Sate Scris de: FMI Ciprian Olariu din Iunie 11, 2011, 17:38:51 Poate sa-mi explice si mie cineva care e problema cu testul 13 de iau TLE pe o implementare O(n+m) cu BFS,graf memorat prin liste de adiacenta alocate dinamic(nu cu STL),citire cu cstdio si conditie de oprire din BFS cand a gasit solutia? ???
LE : Gata,am parsat citirea si am luat 100pct :peacefingers: Mersi eudanip (http://"http://infoarena.ro/utilizator/eudanip") :) Titlul: Răspuns: 461 Sate Scris de: Eugenie Daniel Posdarascu din Iunie 11, 2011, 21:41:28 Parseaza citirea.
Titlul: Răspuns: 461 Sate Scris de: Emanuel Nrx din Decembrie 30, 2014, 19:23:05 Ce poate avea solutia mea? Iau TLE pe un test. Oare din cauza ca nu parsez citirea?
Cod: #include <fstream> #include <vector> #define Max 100100 using namespace std; FILE *fin = fopen("sate.in", "r"); FILE *fout = fopen("sate.out", "w"); int n, m, i, j, k, ok, minim, maxim,z; vector < int > v[Max]; int vizit[Max], dist[Max], p, u, x, y; void bfs(int val){ vizit[val] = 1; for(int i = 0; i < v[val].size(); i += 2){ if(vizit[v[val]] == 0){ dist[v[val]] = dist[val] + v[val][i + 1]; bfs(v[val]); } } return; } void read(){ fscanf(fin, "%d%d%d%d", &n, &m, &p, &u); for(i = 1; i <= m; i ++){ fscanf(fin, "%d%d%d", &x, &y, &z); v
v[y].push_back(-z); } return; } int main(){ read(); bfs(p); fprintf(fout, "%d", dist); return 0; } Titlul: Răspuns: 461 Sate Scris de: Serban Cercelescu din Iunie 25, 2016, 00:03:23 Ar trebui sa se garanteze ca X < Y sau sa se schimbe testele. Cu prima mea sursa daca X > Y, distanta afisata imi iesea negativa (am luat 100p). In plus, merge si cu DFS (sugerez un tag in plus).
Titlul: Răspuns: 461 Sate Scris de: Pera Alexandru din Noiembrie 26, 2018, 09:59:28 DA :D :D :D
|