Titlul: Queue Scris de: Serban Andrei Stan din Ianuarie 20, 2013, 00:12:27 Aici se pot pune întrebări legate de problema Queue de la Runda 2 a concursului Algoritmiada 2013.
Timpul alocat întrebărilor este de 1 ora dupa inceperea concursului. Întrebările vor fi formulate astfel încât să se poată răspunde cu DA sau NU. În caz contrar sau în cazul în care întrebarea își găsește răspuns în enunțul problemei, răspunsul va fi FARA COMENTARII. Titlul: Răspuns: Queue Scris de: Mihai Ionut Enache din Ianuarie 20, 2013, 09:46:33 Toate valorile folosite in operatiile de push vor fi numere intregi ≤ 10^6.
Sunt numai numere naturale sau pot fi si negative? Titlul: Răspuns: Queue Scris de: Alex Velea din Ianuarie 20, 2013, 09:46:43 Citat Pe fiecare linie a fisierului de output puteti afisa maximum 500 000 caractere, altfel outputul se va considera invalid. Citat [...] trebuie sa inceapa cu indicele operatiei din input careia sirul de operatii de pe linia curenta ii corespunde Daca pentru a face operatia 'x' am nevoie de mai mult de 500 k de caractere de afisat, pot afisa pe 2 linii? x: .. x: .. Titlul: Răspuns: Queue Scris de: Oncescu Costin din Ianuarie 20, 2013, 09:50:39 Eu nu am inteles exact ce trebuie sa facem.Nu vad nici o cerinta. :?
Titlul: Răspuns: Queue Scris de: Gramatovici Paul din Ianuarie 20, 2013, 09:50:54 Citat Pe fiecare linie a fisierului de output puteti afisa maximum 500 000 caractere, altfel outputul se va considera invalid. Restrictia asta sigur e corecta? Titlul: Răspuns: Queue Scris de: Ilie Andrei din Ianuarie 20, 2013, 09:51:30 In loc de ultimia linie din .out de la ex:"5: read(2) push(2,2)" putea fi si "5: read(2) push(1,2)"?
Titlul: Răspuns: Queue Scris de: Florin Chirica din Ianuarie 20, 2013, 09:51:56 Se garanteaza ca exista cel putin un element in coada cand se face operatia pop_front() ?
Titlul: Răspuns: Queue Scris de: Alex Velea din Ianuarie 20, 2013, 09:52:20 Se garanteaza ca in operatiile sunt valide? ( Nu o sa se ceara scoaterea unui element cand stiva este goala )
Titlul: Răspuns: Queue Scris de: Bodnariuc Dan Alexandru din Ianuarie 20, 2013, 09:53:23 sunt de acord cu geniucos ar trebui sa fie mai clara problema nu intaleg nimic din enunt.
Titlul: Răspuns: Queue Scris de: Serban Andrei Stan din Ianuarie 20, 2013, 09:55:37 @Mihai22e naturale
@veleandu NU @geniucos Citeste mai atent, si restrictiile si inputul. @gramatovici_paul DA @andreii1 DA @elfus2 & veleandu Operatiile sunt valide Titlul: Răspuns: Queue Scris de: Florin Chirica din Ianuarie 20, 2013, 10:04:09 Este obligatoriu ca operatiile din out sa se execute in ordinea 1, 2, ... N ?
Titlul: Răspuns: Queue Scris de: Serban Andrei Stan din Ianuarie 20, 2013, 10:05:02 No comment
Daca te referi daca afisarile sa se execute in ordinea 1..N, raspunsul este DA. Titlul: Răspuns: Queue Scris de: Profir Tudor din Ianuarie 20, 2013, 10:08:16 Ce ar trebui sa insemne feedback-ul "Variabila de push invalida"?
Titlul: Răspuns: Queue Scris de: Serban Andrei Stan din Ianuarie 20, 2013, 10:11:28 Ca faci push cu o valoare != wr.
Titlul: Răspuns: Queue Scris de: Gemene Narcis - Gabriel din Ianuarie 20, 2013, 10:23:26 Solutia este unica?
Titlul: Răspuns: Queue Scris de: Marian Darius din Ianuarie 20, 2013, 10:23:43 Se mai poate adauga un test la feedback?
Titlul: Răspuns: Queue Scris de: Serban Andrei Stan din Ianuarie 20, 2013, 10:31:40 @narcis_vs No comment, citeste raspunsurile de mai sus.
Titlul: Răspuns: Queue Scris de: Stochitoiu Radu din Ianuarie 20, 2013, 11:06:27 De ce este gresit output-ul acesta ?
1: read(3) push(1,3) 2: read(5) push(1,5) 3: pop(1) push(2,5) pop(1) push(2,3) pop(2) write(3) 4: pop(2) write(5) 5: read(2) push(1,2) Nu inteleg . :| Titlul: Răspuns: Queue Scris de: Avramescu Cristian din Ianuarie 20, 2013, 11:14:18 ce inseamana:"Afisare invalida a valorii WR"?
Titlul: Răspuns: Queue Scris de: Puscas Sergiu din Ianuarie 20, 2013, 11:16:41 De ce este gresit output-ul acesta ? [...] Nu inteleg . :| nu e gresit, si sursa mea da exact acelasi output pe exemplu, si ia ok pe testul de feedback. ai grija la restrictia "O operatie de push efectuata pe una dintre stive se considera valida daca valoare folosita se afla in WR." Titlul: Răspuns: Queue Scris de: Stochitoiu Radu din Ianuarie 20, 2013, 11:29:32 De ce este gresit output-ul acesta ? [...] Nu inteleg . :| nu e gresit, si sursa mea da exact acelasi output pe exemplu, si ia ok pe testul de feedback. ai grija la restrictia "O operatie de push efectuata pe una dintre stive se considera valida daca valoare folosita se afla in WR." Am folosit read(2) => Este folosita in WR, deci pot folosi push(1,2) ; Chiar nu inteleg !!! Titlul: Răspuns: Queue Scris de: Nicu B. din Ianuarie 20, 2013, 12:22:52 Mi-am dat seama.
Titlul: Răspuns: Queue Scris de: Puscas Sergiu din Ianuarie 20, 2013, 12:31:57 Cod: 4: read(5) pop(2) push(1,2) push(1,5) aici, tu il citesti pe 5 (wr = 5), apoi scoti varful din stiva 2 (wr = varful = 2), il introduci pe wr (=2) in prima stiva, dupa care incerci sa il introduci si pe 5 (numarul citit initial) in aceeasi stiva. ultima operatie nu respecta restrictia scrisa mai sus, pentru ca functiei push() ii poti da ca parametru doar valoarea actuala a variabilei wr, iar tie ti se pierde acea valoare. corect ar fi cam asa: Cod: 4: pop(2) push(1,2) read(5) push(1,5) Titlul: Răspuns: Queue Scris de: Tudor Costin Razvan din Ianuarie 20, 2013, 12:41:17 testul 1 e exemplul??
Titlul: Răspuns: Queue Scris de: Gramatovici Paul din Ianuarie 20, 2013, 19:46:25 Intr-un worst case, sursa mea afiseaza peste 750.000 de caractere pe un rand. Totusi am luat 100. Nu sunt singuru in situatia asta. Modificati testele sau modificati restrictia?
Titlul: Răspuns: Queue Scris de: Alex Cociorva din Ianuarie 20, 2013, 20:28:22 Cum pot sa afisez cat mai rapid instructiunile?
Daca afisez cu printf("text") iau tle. LE: TLE-ul nu era de la afisare, ci de la algoritm. Am schimbat metoda de rezolvare si acum iau 100 puncte. Titlul: Răspuns: Queue Scris de: Avramescu Cristian din Ianuarie 20, 2013, 21:55:43 care este solutia optima?eu iau tot 30..si nu cred ca pop sa o mai optimizez...
Titlul: Răspuns: Queue Scris de: Alex Velea din Ianuarie 20, 2013, 23:10:25 Paul are dreptate ..
Adi craciun are o solutie destul de smechera, care merge cu limita aia cu 500k pe linie, dar personal, cred ca se freaca la timp :-s Titlul: Răspuns: Queue Scris de: Rares Buhai din Ianuarie 21, 2013, 15:05:04 Ca sa iti intre bine in limite, observai ca poti sa ai maxim 15000 pop_front()-uri. Deci nu aveai nevoie sa afisezi vreodata mai mult de primele 15000 elemente intrate, asa ca bagai in seama doar maxim primele 15000 de push_back()-uri (daca nu, puneai "read(...)", dar nu introduceai valoarea in stiva). Asa ti se injumatatea numarul de elemente din stiva, deci ti se injumatatea si dimensiunea maxima a unei linii.
Titlul: Răspuns: Queue Scris de: Alex Velea din Ianuarie 21, 2013, 18:42:13 Interesant ...
Eu aveam 2 stive, una in care puneam si alta din care scoteam. Daca nu aveam ce scoate, scoteam tot din stiva de entry si puneam tot in cea de exit, si practic imi rasturnam stiva. Ai dreptate Rares, dar daca am deja cateva elemente in stiva de exit, cum pot rasturna stiva de entry? :-s Titlul: Răspuns: Queue Scris de: Vlad Tarniceru din Ianuarie 21, 2013, 18:49:06 Ai dreptate Rares, dar daca am deja cateva elemente in stiva de exit, cum pot rasturna stiva de entry? :-s Pai cred ca merge oricum, adica tu atunci cand inserezi un element nou intr-o stiva verifici daca nu cumva ai inserat in total mai mult de 15000. Titlul: Răspuns: Queue Scris de: Rares Buhai din Ianuarie 21, 2013, 19:23:24 Interesant ... Faci la fel ca in solutia ta.Eu aveam 2 stive, una in care puneam si alta din care scoteam. Daca nu aveam ce scoate, scoteam tot din stiva de entry si puneam tot in cea de exit, si practic imi rasturnam stiva. Ai dreptate Rares, dar daca am deja cateva elemente in stiva de exit, cum pot rasturna stiva de entry? :-s Singura modificare e ca, atunci cand iti vine un query "push_back()", daca ai avut pana la acel moment deja 15000 de push_back()-uri il ignori (faci doar "read()"-ul, fara sa mai pui nicaieri elementul). Titlul: Răspuns: Queue Scris de: Alex Velea din Ianuarie 21, 2013, 21:34:27 Glumesti?
Adica .. tu te folosesti de un glitch in evaluator .. in sensul ca in realitate nu ar merge asta. +1. |