•DITzoneC
|
|
« : Aprilie 24, 2007, 07:39:05 » |
|
Aici puteţi discuta despre problema Sotron.
|
|
|
Memorat
|
|
|
|
•Florian
|
|
« Răspunde #1 : Aprilie 24, 2007, 19:56:41 » |
|
Nu stiu de ce, dar iau 70 de puncte, cu WA pe trei teste!! Nu vad de ce se intampla lucrul asta. Adik, dupa parerea mea este imposibil sa existe cazuri particulare la o problema ca asta!!! Are cineva vreo idee?
|
|
|
Memorat
|
|
|
|
•cos_min
|
|
« Răspunde #2 : Aprilie 24, 2007, 20:00:06 » |
|
Maximul poate fi si negativ, probabil aici gresesti.
|
|
|
Memorat
|
vid...
|
|
|
•Florian
|
|
« Răspunde #3 : Aprilie 24, 2007, 20:09:03 » |
|
Nu...initializez maximul cu - MALONG (minus MAXLONG) (lucrez in c++)... Imi scapa ceva..dar nu `mi dau seama in niciun fel...
|
|
|
Memorat
|
|
|
|
•Tabara
|
|
« Răspunde #4 : Aprilie 25, 2007, 17:29:40 » |
|
iau 90. WA pe testul 8.Mi-am verificat sursa cu testele oficiale si acela e intr-adevar singurul test pe care nu merge.Nu inteleg totusi de ce se intampla asta.Am verificat drumul pe exemple mai mari si merge prin matrice bine.Nu imi dau seama ce ar puteas fi gresit.... Am initializat maximul cu (-1)*(2<<31 ), deci nu asta ar fi problema.[cel putin nu cred]. [Later Edit] Nevermind...am luat 100 . Uitasem sa tratez separat cand n-ul este par si impar.
|
|
« Ultima modificare: Aprilie 25, 2007, 18:52:45 de către Tabara Mihai »
|
Memorat
|
|
|
|
•mihai0110
Strain
Karma: 6
Deconectat
Mesaje: 20
|
|
« Răspunde #5 : Aprilie 27, 2007, 21:14:25 » |
|
ce testezi separat ca nu am inteles ce ai vrut sa zici, eu tot 90 de puncte iau, la oni am luat 50 , (am facut cu o matrice in care tineam maximu (b[i+1][j]+ a [j] , a[ i ][j]) sau (b[j-1]+ a[j] , a[ i] [j]) - depinde de paritatea liniei- si afisam maximu din b matricea b)
|
|
« Ultima modificare: Aprilie 27, 2007, 21:15:59 de către bivol mihai »
|
Memorat
|
|
|
|
•Tabara
|
|
« Răspunde #6 : Aprilie 27, 2007, 21:30:08 » |
|
ce testezi separat ca nu am inteles ce ai vrut sa zici, eu tot 90 de puncte iau, la oni am luat 50 , (am facut cu o matrice in care tineam maximu (b[i+1][j]+ a [j] , a[ i ][j]) sau (b[j-1]+ a[j] , a[ i] [j]) - depinde de paritatea liniei- si afisam maximu din b matricea b)
Poi eu nu tratam cazul in care n este par. Cand n este impar, porneam din fiecare casuta albastra de pe prima coloana si faceam drumul ei firesc, ( si calculam secventa de suma maxima ).Apoi de pe fiecare casuta alba de pe ultima linie porneam iarasi drumul firesc ( si din nou secventa de suma maxima ). Astfel alegeam maximul dintre toate secventele si luam 90.Problema e ca uitasem ca n poate fi si par, astfel ca ultima linia incepea cu o casuta alba.Deci am facut acelasi algoritm cu pornire din casutele albastre de pe prima coloana si ulterior casutele albe *( incepand cu prima de pe ultima linie ) ai am luat 100. Ar mai fi o observatie.Era un test printre cele oficiale pe care nu il luam pentru ca secventa de suma maxima era chiar un element al matricei ( unul singur ) si eu nu verificam la initializarea in dinamica de secventa de suma maxima daca maximul putea fi chiar unul dintre elemente. Sper sa iti iasa!
|
|
|
Memorat
|
|
|
|
•Florian
|
|
« Răspunde #7 : Aprilie 28, 2007, 13:10:37 » |
|
Eu am facut putin mai diferit...Pt fiecare element al matricii urmam drumul firesc pana ma opream ajungand la prima linie sau la ultima coloana, si calculam suma tuturor elemntelor prin care treceam, comparand la fiecare pas cu suma maxima obinuta pana atunci. Insa iau doar 70 de puncte..nu vad unde as putea gresi...
|
|
|
Memorat
|
|
|
|
•vanila_CPP
Strain
Karma: -55
Deconectat
Mesaje: 14
|
|
« Răspunde #8 : August 20, 2007, 20:25:48 » |
|
si eu iau 70 de puncte pe o idee pe care am luat 100 la byNET. are careva vreo sugestie?
|
|
|
Memorat
|
|
|
|
•ciprianf
|
|
« Răspunde #9 : Aprilie 10, 2008, 21:23:55 » |
|
Nu stiu daca ai rezolvat-o intre timp dar uite o idee: i-ati matricea b(i)(j)=suma maxima care se poate obtine pornind de pe pozitia (i,j)
|
|
|
Memorat
|
|
|
|
•Mishu91
|
|
« Răspunde #10 : Aprilie 10, 2008, 21:49:34 » |
|
ia-ti matricea b(i)(j)=suma maxima care se poate obtine pornind de pe pozitia (i,j)
Intra in n^2 asa?
|
|
|
Memorat
|
|
|
|
•fireatmyself
|
|
« Răspunde #11 : Aprilie 12, 2008, 09:08:40 » |
|
matricea respectiva se calculeaza in O(n^3).
|
|
|
Memorat
|
Viata e scurta. Daca nu o putem lungi, macar s-o facem lata.
|
|
|
•Mishu91
|
|
« Răspunde #12 : Aprilie 13, 2008, 12:20:38 » |
|
Si intra in timp cu O(n^3) ?
|
|
|
Memorat
|
|
|
|
•fireatmyself
|
|
« Răspunde #13 : Aprilie 13, 2008, 12:45:35 » |
|
da, daca tii cont de o mica observatie.
|
|
|
Memorat
|
Viata e scurta. Daca nu o putem lungi, macar s-o facem lata.
|
|
|
•Mishu91
|
|
« Răspunde #14 : Aprilie 13, 2008, 12:51:08 » |
|
Dar o dinamica in n^2 e mai eficienta si e relativ simplu de implementat
|
|
|
Memorat
|
|
|
|
•fireatmyself
|
|
« Răspunde #15 : Aprilie 13, 2008, 12:52:51 » |
|
nu te contrazic. daca ai scos n^2 cu atat mai bine. eu am calculat in n^3 matricea respectiva.
|
|
|
Memorat
|
Viata e scurta. Daca nu o putem lungi, macar s-o facem lata.
|
|
|
|
|