Pagini: [1] 2   În jos
  Imprimă  
Ajutor Subiect: 185 SETI  (Citit de 8224 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
ditzone
Vizitator
« : Martie 03, 2006, 18:22:32 »

Aici puteţi discuta despre problema SETI.
Memorat
y2k
Strain


Karma: -3
Deconectat Deconectat

Mesaje: 22



Vezi Profilul
« Răspunde #1 : Martie 06, 2006, 08:25:41 »

Cred ca aveti probleme cu evaluatorul, mai exact cu timpii dati de el:
  Am trimis exact aceasi sursa de doua ori intr-un interval de 1 minut. Pt prima data am luat 40 de puncte, iar a doua oara 50  Applause

  Later edited:
  Am incercat din nou, si iar am luat 40 cu 50 de puncte  Mr. Green
Memorat
svalentin
Nu mai tace
*****

Karma: 88
Deconectat Deconectat

Mesaje: 704



Vezi Profilul
« Răspunde #2 : Martie 06, 2006, 14:39:58 »

Asta se intampla la cazurile limita.. daca mai optimizezi putin programul o sa iei 50 constant. Prin putin se poate intelege de exemplu declararea variabilelor folosite in for local si nu global.
Memorat
cristi8
Vizitator
« Răspunde #3 : Martie 06, 2006, 16:19:15 »

Citat din mesajul lui: y2k
Am trimis exact aceasi sursa de doua ori intr-un interval de 1 minut.


btw.. de ce trimiti exact aceasi sursa intr-un interval de 1 minut ?
Memorat
y2k
Strain


Karma: -3
Deconectat Deconectat

Mesaje: 22



Vezi Profilul
« Răspunde #4 : Martie 07, 2006, 17:56:59 »

Citat din mesajul lui: cristi8
Citat din mesajul lui: y2k
Am trimis exact aceasi sursa de doua ori intr-un interval de 1 minut.


btw.. de ce trimiti exact aceasi sursa intr-un interval de 1 minut ?


Pai aveam probleme cu internetul si am dat de doua ori fara sa stiu ca prima data a fost acceptata. Si inca ceva... puteti sa-mi spuneti complexitatea solutiei oficiale?  Pray
Memorat
u-92
Vizitator
« Răspunde #5 : Martie 07, 2006, 18:34:45 »

daca faci intai o preprocesare si apoi raspunzi la fiecare intrebare in logN*c (c o constanta Smile ) ar trebui sa intre in timp fara probleme.
Memorat
y2k
Strain


Karma: -3
Deconectat Deconectat

Mesaje: 22



Vezi Profilul
« Răspunde #6 : Martie 07, 2006, 18:37:00 »

preprocesare la ce?
Memorat
u-92
Vizitator
« Răspunde #7 : Martie 07, 2006, 18:44:31 »

pai asupra sirului initial, nu prea ai altceva la ce
Memorat
danielp
Vorbaret
****

Karma: 34
Deconectat Deconectat

Mesaje: 194



Vezi Profilul
« Răspunde #8 : Martie 07, 2006, 20:24:21 »

Complexitatea solutiei mele e O(N log LMAX + M log N * LMAX), unde N e lungimea vectorului, M e numarul de cuvinte si LMAX e lungimea maxima a unui cuvant. Mie imi intra fara nici o problema in timp...
Memorat

I can't get a life if my heart's not in it
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #9 : Martie 17, 2006, 02:08:07 »

pentru cei care lucreaza in pascal, cum ati facut citirea?

stiu ca noul compilator are probleme cu readln/read.
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
domino
Echipa infoarena
Nu mai tace
*****

Karma: 281
Deconectat Deconectat

Mesaje: 1.340



Vezi Profilul WWW
« Răspunde #10 : Martie 17, 2006, 02:15:11 »

Era vorba de vechiul compilator , nu de cel nou
Memorat
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #11 : Martie 17, 2006, 02:22:49 »

later edit: nevermind, am schimbat ceva pe la citire si a luat 100
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
u-92
Vizitator
« Răspunde #12 : Martie 17, 2006, 02:26:42 »

s-ar putea sa nu fie din cauza asta.. la o problema schimbam citirea in mai multe moduri si atatea punctaje diferite luam, era din cauza unui bug care nu avea nici o legatura cu citirea datelor
Memorat
points_hunter
Strain
*

Karma: -7
Deconectat Deconectat

Mesaje: 26



Vezi Profilul
« Răspunde #13 : Martie 17, 2006, 09:16:01 »

As vrea si eu sa stiu ce are programul cand iti da eroarea RUN OUT OF MEMORY. E din cauza pointerilor care probabil nu sunt alocati bine?
In total memoria mea nu depaseste 0.5 Mb Question
Memorat

Intr-o lume plina de prostie si noobism
Ceva mai increzator, putin mai oportunist
Nihil sine DEO(Iubeste si vei fi iubit , Nu uita niciodata ca esti om)
pauldb
Nu mai tace
*****

Karma: 821
Deconectat Deconectat

Mesaje: 1.901



Vezi Profilul
« Răspunde #14 : Martie 17, 2006, 21:02:18 »

wefgef, imi areti si mie cum ai facut citirea?

Iau in continuare 0 puncte (toate testele WA - ma rog, sau fisier de iesire lipsa, dar nu cred ca asta e problema), desi mi-am dat o groaza de teste si le iau pe toate.
  Brick wall
Poate e de la citire... :cry:
Memorat

Am zis Mr. Green
gogu
Client obisnuit
**

Karma: 42
Deconectat Deconectat

Mesaje: 98



Vezi Profilul
« Răspunde #15 : Martie 17, 2006, 21:20:37 »

Eu am facut asa pentru fiecare cuvant sau linie de text:

Cod:
readln(st);

unde st e un string. Nu cred ca sunt probleme cu citirea. Aproape sigur ai un bug pe altundeva
Memorat
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #16 : Martie 17, 2006, 22:38:41 »

eu citeam in array of char.

Cod:
i := 0;
while not seekeoln do begin
  inc(i); read(u[i]);
end;
readln;
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
points_hunter
Strain
*

Karma: -7
Deconectat Deconectat

Mesaje: 26



Vezi Profilul
« Răspunde #17 : Martie 20, 2006, 11:04:40 »

Am reusit si eu sa storc 40 puncte cu o solutie bazata pe cautari cu pointeri,la restul da TLE.

Spuneti-mi si mie una dintre cele mai eficiente metode de citire ale sirurilor de caractere in c sau c++,ppppplllllssssssss

V-ati gandit cumva si la posibilitatea de a lucra cu numere in baza 64.Cred ca pentru asta a fost pusa problema. Sa te prinzi de niste optimizari.....Insa nu stiu ce sa zic Mad

Tot ma chinui sa gasesc o idee cat de cat eficienta si nu reusesc
Memorat

Intr-o lume plina de prostie si noobism
Ceva mai increzator, putin mai oportunist
Nihil sine DEO(Iubeste si vei fi iubit , Nu uita niciodata ca esti om)
fireatmyself
Nu mai tace
*****

Karma: 36
Deconectat Deconectat

Mesaje: 492



Vezi Profilul
« Răspunde #18 : Martie 21, 2006, 10:36:28 »

eu am luat 100 cu citirea urmatoare
Cod:
gets(SirInitial);
scanf("%d", &N);
for (i = 0; i < N; i++) gets(S[i]);


Nu este nevoie de pointeri sau de Int64 (daca la asta te referi), ci doar de niste mici observatii de bun simt. Cat despre optimizari ale solutiei corececte sunt si ele, de asemenea, de bun simt. Nu e ceva complicat, oricum tot resepctul celui care ia 100 si pe Borland C sau Borland Pascal  Pray  Pray  Pray
Memorat

Viata e scurta. Daca nu o putem lungi, macar s-o facem lata.
anouk
Strain


Karma: 10
Deconectat Deconectat

Mesaje: 13



Vezi Profilul
« Răspunde #19 : Aprilie 24, 2008, 23:17:46 »

Ar putea cineva sa-mi explice ideea pentru rezolvarea cu suffix arrays? Am gasit pe articolul cu siruri de sufixe cateva indicatii, unde se pomenea ceva de 2 cautari binare. Ce anume se cauta binar, cumva sufixele ce au ca prefix pe fiecare din cuvintele din lista de M? Si cum se face comparatia de prefixe, trebuie preprocesate si cele M cuvinte cu aceeasi metoda ca pentru sirul principal?
Multumesc anticipat  Smile
Memorat
amadaeus
Client obisnuit
**

Karma: 28
Deconectat Deconectat

Mesaje: 93



Vezi Profilul
« Răspunde #20 : Aprilie 25, 2008, 10:32:48 »

Daca un sir P apare intr-un sir S, atunci P trebuie sa fie prefix al unuia sau mai multor sufixe ale lui S. Astfel, avand sirul sortat al sufixelor lui S, toate pozitiile i din acest sir care indeplinesc conditia ca sufixul ce corespunde acestei pozitii sa aiba ca prefix sirul P sunt deplasamente corecte ale lui P in S. Vei observa ca toate aceste pozitii i sunt consecutive in sirul de sufixe, si poti gasi un "upper bound" si un "lower bound" cu doua cautari binare. Fiecare cautare binara are nevoie de log|S| pasi, iar fiecare pas are nevoie de cel mult |P| comparatii. De aici O( |P|*log|S| ).

Datorita conditiei suplimentare ca niciun pattern nu va fi mai lung de 64 de caractere, poti sorta sufixele in asa fel incat prefixele lor de lungime 64 sa fie in ordinea corecta (asta reduce din timpul constructiei suffix array-ului).
« Ultima modificare: Aprilie 25, 2008, 11:13:05 de către Lucian Boca » Memorat

"one of these days I'm going to cut you into little pieces..."
zombie_test_test
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #21 : Octombrie 17, 2008, 11:46:46 »

Testul 1 nu are '\n' dupa ultimul cuvant ceea ceea ce strica unele functii de citire. Ar trebui adaugat.  Smile
Memorat
CezarMocan
Nu mai tace
*****

Karma: 252
Deconectat Deconectat

Mesaje: 567



Vezi Profilul
« Răspunde #22 : Octombrie 17, 2008, 15:24:54 »

Cat m-am chinuit sa fac testu ala sa mearga...  Smile
Memorat
zombie_test_test
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #23 : Octombrie 17, 2008, 17:14:23 »

Da si eu , nu greseam nimci la program pur si simplu calculam lungimea stringului tinand cont ca e si '\n' cand am pus un if sa verific am trecut testul.
Apropo tu cum ai facut de ai trecut asa rapid de testele 6,7 , eu tot laum tle pe ele.  Think
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #24 : Martie 16, 2010, 18:02:41 »

Am facut problema cu suffix array. Insa, daca opream precalcularea la pasul 4 ( adica dupa ce sortam sufixele de lungime 2^4 = 16 ), luam WA. Cand am lasat pana la pasul logN, a mers de 100. Nelamurirea mea este: de ce nu functiona cand ma opream la pasul 4 ?  Think
Memorat
Pagini: [1] 2   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines