•DITzoneC
|
|
« : Iunie 25, 2007, 16:20:41 » |
|
Aici puteţi discuta despre problema Orase.
|
|
|
Memorat
|
|
|
|
•gabitzish1
|
|
« Răspunde #1 : Iunie 26, 2007, 14:40:01 » |
|
Ce complexitate trebuie sa aiba solutia?
|
|
|
Memorat
|
|
|
|
•cos_min
|
|
« Răspunde #2 : Iunie 26, 2007, 15:31:14 » |
|
Eu am reusit sa scot un O(n*logn), pe total, si am luat 100 pcte.
|
|
|
Memorat
|
vid...
|
|
|
•Dastas
|
|
« Răspunde #3 : Iunie 26, 2007, 22:44:21 » |
|
in exemplu, strazile sunt:
5 6 2 2 (1) 0 3 2 7 (2)
distanta dintre orasele de la capatul strazilor (1) si (2), care este? 7+2 = 9, sau 7-2 = 5? Se pot suprapune strazile?
|
|
|
Memorat
|
|
|
|
•Florian
|
|
« Răspunde #4 : Iunie 27, 2007, 07:38:28 » |
|
Pai..dupa cum vezi in explicatie [ in desen ] strazile au fost desenate una in sus si una in jos, asta pentru a simplifica probabil intelegerea. Cred k se pot suprapune, insa calculul distantei va ramane la fel [ dist (i,j)=li+ lj <=>asta doat in cazul suprapunerii]. Sau...mai simplu:considera orice pereche i,j kare s-ar "suprapune" k fiind opuse [ k in desen] si s-a rezolvat tot.
|
|
|
Memorat
|
|
|
|
•Dastas
|
|
« Răspunde #5 : Iunie 27, 2007, 12:21:16 » |
|
pai si daca am: 2 2 2 3 2 4 cum mai consider ca sunt opuse? probabil ca-i asa cum spui, n-am rezolvat inca problema, dar nu prea e logic...
|
|
|
Memorat
|
|
|
|
•Protoman
|
|
« Răspunde #6 : Iunie 27, 2007, 12:31:29 » |
|
Din moment ce nu este precizat modul lor de asezare atunci ramane de datoria ta sa il alegi... si pentru a obtine maximul te duci cu max1 intr-o directie si cu max2 in cealalta . In cazul tau rezultatul va fi 7
|
|
|
Memorat
|
|
|
|
•sima_cotizo
|
|
« Răspunde #7 : Iunie 27, 2007, 19:32:58 » |
|
Am facut un program N log N, imi ia 30 cu TLE si un WA... nu asta conteaza... ci faptul ca am facut in main daca N>50000... si am 6 teste cu NonZero Exit Status... Care sunt limitele pana la urma?
|
|
|
Memorat
|
|
|
|
•cos_min
|
|
« Răspunde #8 : Iunie 27, 2007, 19:38:42 » |
|
N <= 50000. Pentru ca eu mi-am declarat astfel sirurile pe care le-am folosit si a mers fara probleme.
|
|
|
Memorat
|
vid...
|
|
|
•sima_cotizo
|
|
« Răspunde #9 : Iunie 27, 2007, 19:42:09 » |
|
Tocmai scriam un reply in care sa sustin ca nu e asa, dar am gresit ... citeam (n,m) nu (m,n)... Greseala mea, scuze!
|
|
|
Memorat
|
|
|
|
•c_sebi
Client obisnuit
Karma: 24
Deconectat
Mesaje: 62
|
|
« Răspunde #10 : Iunie 27, 2007, 21:46:39 » |
|
[..] distanta dintre orasele de la capatul strazilor (1) si (2), care este? 7+2 = 9, sau 7-2 = 5? Se pot suprapune strazile?
Probabil ca atunci cand vrei sa mergi dintr-un oras in altul trebuie sa treci si pe strada principala: dist(i, j)=L[ i]+L[j]+|D[ i]-D[j]|.
|
|
|
Memorat
|
|
|
|
•Florian
|
|
« Răspunde #11 : Iunie 27, 2007, 21:54:46 » |
|
Cum se face asta in N logN? Care e idea care sta la baza algoritmului..? k nu ma prind Am o rezolvare N^2 cu care prind numa` 40 de puncte...
|
|
|
Memorat
|
|
|
|
•Binary_Fire
Client obisnuit
Karma: 82
Deconectat
Mesaje: 87
|
|
« Răspunde #12 : Iunie 27, 2007, 23:38:10 » |
|
Pai N*logN vine de la sortare , dupa care liniar determini maximul . Mai mult nu zic ca deja e mare spoiler ce am zis
|
|
|
Memorat
|
|
|
|
•c_sebi
Client obisnuit
Karma: 24
Deconectat
Mesaje: 62
|
|
« Răspunde #13 : Iunie 29, 2007, 16:42:52 » |
|
Am rezolvat problema, insa nu m-am folosit nicaieri de M (lungimea strazii principale). Voi ati folosit-o undeva?
|
|
|
Memorat
|
|
|
|
•CezarMocan
|
|
« Răspunde #14 : Iunie 29, 2007, 16:59:09 » |
|
Pai probabil ca te ajuta daca faci sortare de aia in timp liniar ca sa nu mai trebuiasca sa afli maximu din sir... alta utilizare nu-i vad...
|
|
|
Memorat
|
|
|
|
•peanutz
|
|
« Răspunde #15 : Iunie 29, 2007, 20:37:59 » |
|
In articol e: distanta care trebuie parcursa intre doua orase i < j: Li+Di+Lj-Dj
cred ca e j < i..
|
|
|
Memorat
|
....staind....
|
|
|
•domino
|
|
« Răspunde #16 : Iunie 29, 2007, 21:19:13 » |
|
Asa e.
|
|
|
Memorat
|
|
|
|
•anna_bozianu
|
|
« Răspunde #17 : Iulie 05, 2007, 13:55:10 » |
|
Am rezolvat problema, insa nu m-am folosit nicaieri de M (lungimea strazii principale). Voi ati folosit-o undeva?
Eu nu. Doar ca am vazut ca solutia este <=3.000.000 deci intra pe long int. In rest in m-a "ajutat" ca pe altii sa fac citirea in ordine gresita a lui m si n
|
|
|
Memorat
|
|
|
|
•zloteanu.adrian
Strain
Karma: -9
Deconectat
Mesaje: 38
|
|
« Răspunde #18 : Iulie 08, 2009, 10:55:47 » |
|
Am incercat solutia oficiala, dar iau numai 50 de puncte, restul sunt TLE-uri ce sortare ar trebui sa folosesc?(cu insertion sort fac acum) http://infoarena.ro/job_detail/329952cred ca se blocheaza undeva, dif de timp e uriasa!
|
|
|
Memorat
|
|
|
|
•c_e_manu
|
|
« Răspunde #19 : Iulie 08, 2009, 11:04:15 » |
|
Foloseste quicksort. Desi ar trebui sa intre si cu mergesort, ambele avand complexitatea O(nlogn).
|
|
|
Memorat
|
|
|
|
•zloteanu.adrian
Strain
Karma: -9
Deconectat
Mesaje: 38
|
|
« Răspunde #20 : Iulie 08, 2009, 11:10:13 » |
|
nu am invatat quicksort, chiar daca stiu ca e cel mai rapid oricum, caut pe net
|
|
|
Memorat
|
|
|
|
•CezarMocan
|
|
« Răspunde #21 : Iulie 08, 2009, 11:27:17 » |
|
Foloseste sort-ul din STL. Incluzi libraria <algorithm> si apoi scrii sort(sir + 1, sir + N + 1);
|
|
|
Memorat
|
|
|
|
•zloteanu.adrian
Strain
Karma: -9
Deconectat
Mesaje: 38
|
|
« Răspunde #22 : Iulie 08, 2009, 11:50:33 » |
|
adica pentru vectorul a[50000] scriu sort(a+1,a+n+1)?
|
|
|
Memorat
|
|
|
|
•jupanubv92
Client obisnuit
Karma: 19
Deconectat
Mesaje: 74
|
|
« Răspunde #23 : Iulie 08, 2009, 12:11:29 » |
|
Da, unde n reprezinta numarul de elemente din vectorul a[50001] . Daca ai elemente in vector de la 1 atunci scri sort(a+1,a+n+1) , iar daca ai de la 0 scri sort(a,a+n); Uite aici un exemplu , sper sa te ajute : #include<fstream.h> #include<algorithm>
using namespace std;
int n,a[500001];
int main() { ifstream fin("sort.in"); ofstream fout("sort.out"); fin>>n; for(int i=1;i<=n;++i) fin>>a[i]; sort(a+1,a+n+1); for(int i=1;i<=n;++i) fout<<a[i]<<" "; return 0; }
|
|
|
Memorat
|
|
|
|
•zloteanu.adrian
Strain
Karma: -9
Deconectat
Mesaje: 38
|
|
« Răspunde #24 : Iulie 08, 2009, 12:12:24 » |
|
multumesc mult!! karma plus la toti
|
|
|
Memorat
|
|
|
|
|