Pagini: 1 [2] 3 4 5   În jos
  Imprimă  
Ajutor Subiect: 007 Datorii  (Citit de 58099 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Matrix
Strain
*

Karma: -3
Deconectat Deconectat

Mesaje: 41



Vezi Profilul
« Răspunde #25 : Martie 24, 2005, 22:02:17 »

hey  cosmin,  ce  ID de yahoo  messenger ai ?
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #26 : Martie 24, 2005, 22:02:43 »

Ai glumit cred cu faza cu pascalu .... si eu tot in pascal lucrez de obicei.
Memorat
Twister
Strain
*

Karma: 0
Deconectat Deconectat

Mesaje: 45



Vezi Profilul
« Răspunde #27 : Martie 24, 2005, 22:04:08 »

Citat din mesajul lui: Cosmin
Ai glumit cred cu faza cu pascalu .....

 Smile  Smile  Smile
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #28 : Martie 24, 2005, 22:04:53 »

Bah Matrix, am vazut ca esti din Bistrita si am zis ca nu mai fac misto de tine, da can zici hey ma exasperezi Smile vorbeste si tu ca omu normal ... id pe messenger iti zice bindea sau tucu
Memorat
Matrix
Strain
*

Karma: -3
Deconectat Deconectat

Mesaje: 41



Vezi Profilul
« Răspunde #29 : Martie 24, 2005, 22:05:58 »

bine, scuze ca te-am enervat,    am  cerut id, pt ca si eu is din bistrita
Memorat
Matrix
Strain
*

Karma: -3
Deconectat Deconectat

Mesaje: 41



Vezi Profilul
« Răspunde #30 : Martie 24, 2005, 22:07:32 »

acum si  Calin, si domnul profesor  sunt la Galati  si de aceea  te-am intrebat
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #31 : Martie 24, 2005, 22:10:08 »

Forumu asta are optiune de a trimite mesaje private ... iti trimit acuma.
Memorat
pirosl
Strain
*

Karma: -2
Deconectat Deconectat

Mesaje: 34



Vezi Profilul
« Răspunde #32 : Mai 27, 2005, 09:37:28 »

0.2....limita de timp? Cu tot cu arbori indexati binar si operatii la nivel de bit nu reusesc sa scot un timp mai bun de 0.21-0.23.
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #33 : Mai 27, 2005, 10:12:10 »

Cum gasesti cel mai putin semnificativ bit diferit de 0?
Memorat
pirosl
Strain
*

Karma: -2
Deconectat Deconectat

Mesaje: 34



Vezi Profilul
« Răspunde #34 : Mai 27, 2005, 10:21:05 »

Citat din mesajul lui: Cosmin
Cum gasesti cel mai putin semnificativ bit diferit de 0?


Adun si scad cu formulele acestea (ma refer la noua pozitie in vector)
poz += (poz ^ (poz-1))&poz;
poz -= (poz^(poz-1))&poz;
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #35 : Mai 27, 2005, 11:50:42 »

Probabil ai bushit altceva pe acolo, s-ar putea si sa ai un ciclu infinit pe undeva pt ca la depasire de timp evaluatoru iti opreste solutia.
Memorat
pirosl
Strain
*

Karma: -2
Deconectat Deconectat

Mesaje: 34



Vezi Profilul
« Răspunde #36 : Mai 27, 2005, 12:44:52 »

Citat din mesajul lui: Cosmin
Probabil ai bushit altceva pe acolo, s-ar putea si sa ai un ciclu infinit pe undeva pt ca la depasire de timp evaluatoru iti opreste solutia.


OK. Am gasit care era problema. Scrierea/citirea din fisier. Am schimbat de la c++ io la c io adica de la ifstream/ofstream la fscanf/fprintf....si intra lejer in timp. Foarte urat din partea lui Sad
Memorat
ldoc
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 6



Vezi Profilul
« Răspunde #37 : Noiembrie 15, 2005, 19:32:06 »

imi poate da shi mie cineva un test ca mie imi merg toate acasa shi iau tot 0 puncte Brick wall
Memorat

Knowlegde, wisdom, understanding are the keys to wealth,
Think anything else and u b playing yourself
wickedman
Echipa infoarena
Nu mai tace
*****

Karma: 227
Deconectat Deconectat

Mesaje: 670



Vezi Profilul WWW
« Răspunde #38 : Noiembrie 15, 2005, 19:44:09 »

Ideea e să foloseşti un algoritm suficient de rapid, nu doar corect.
Probabil iei 0 puncte din cauză că obţii

Time Limit Exceeded

(btw, asta poţi vedea în monitorul de evaluare)
Memorat
ldoc
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 6



Vezi Profilul
« Răspunde #39 : Noiembrie 16, 2005, 19:19:12 »

Prima data ma luat WA dar acum am rezolvat problema si iau TLE.
Imi spune si mie cineva echivalentul pascal la
poz += (poz ^ (poz-1))&poz;
poz -= (poz^(poz-1))&poz;
Memorat

Knowlegde, wisdom, understanding are the keys to wealth,
Think anything else and u b playing yourself
vladcyb1
Vorbaret
****

Karma: 33
Deconectat Deconectat

Mesaje: 166



Vezi Profilul
« Răspunde #40 : Noiembrie 16, 2005, 19:21:47 »

poz:=poz + ((poz)xor(poz-1))and(poz)
poz:=poz-((poz)xor(poz-1))and(poz)
Memorat

Vlad Berteanu
LucAnd
Strain
*

Karma: -1
Deconectat Deconectat

Mesaje: 26



Vezi Profilul
« Răspunde #41 : Decembrie 15, 2005, 21:21:16 »

NU se poate asa ceva , am facut problema , am invata arbori indexati binari, am mers de la c++ la c ca sa-mi intre in timp si acuma aflu ca nu e bun rezultatu , exemplus si orice alt ceva am testat imi merge perfect , va rog da-ti-mi si mieva rog  un test mai complicat sa ma conving ca nu merge

nu mai conteaza , am reusit sa o fac , era o greseala stupida , ceva ce nu se observa decat la testele mari
Memorat
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #42 : Februarie 08, 2006, 11:59:07 »

am shi eu o nelamurire. De ce atunci cand folosesc urmatoarea functie ptr a determina nr de 0-uri terminale imi zice Run Error - invalid memory reference

Cod:

void nr0(int k)
{return (k^(k&(k-1)))>> 1;}


iar dak o folosesc pe urmatoarea

Cod:

int nr0(int k)
{int nr,x;
x=k;
nr=0;
while (!(x%2))
{x=x >> 1;nr++;}
return nr;
}


imi iesa din timp. Care e problema la prima functie??
Memorat
silviug
Echipa infoarena
Nu mai tace
*****

Karma: 193
Deconectat Deconectat

Mesaje: 485



Vezi Profilul
« Răspunde #43 : Februarie 08, 2006, 12:25:43 »

Pentru K = 10100 prima functie face asa:

(10100 ^ (10100 & 10011)) >> 1
(10100 ^ 10011) >> 1
(00111) >> 1
= 00011 = adica 3 in baza 10

=> Functia nu returneaza numarul de zerouri terminale !

Functia ta incearca sa determine cel mai nesemnificativ bit dar ar merge doar daca elimini siftarea la dreapta si ai inversa & cu ^ (cred). Daca faci lucru asta atunci functia va return 2^x, unde x e numarul de zerouri terminale (adica ce returneaza functia a doua).

Inainte sa folosesti o functie in programele tale, gandeste-te un pic ce face. Eventual ia un exemplu si vezi cum functioneaza. Eu cred ca ai incercat sa iei functia de-a gata de pe undeva si sa o bagi in programul tau (zic si eu, poate gresesc).

Silviu

[Later edit]: Btw tipul din avatarul tau e kinda` gay Smile Sau e tipa ?
Memorat

"Don't gain the world and lose your soul, wisdom is better than silver or gold." [Bob Marley - Jamaican reggae musician & singer (1945 - 1981)]
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #44 : Februarie 08, 2006, 12:32:08 »

intr-adevar formula aia am gasit-o undeva insa am gasit-o asha cum mi-ai zis u (fara shiftare)  si imi afiseaza 2^x , x fiind nr de zerouri in baza 2, shi dak ii pun acea shiftare imi da exact x (nu asha ar trebui). VEZI CA AI GRESHIT CAND AI CALCULAT 10100 & 10011, E 10000. Shi plus dak ar fi asta ar trebuie sa dea Wrong answer nu run error - memory reference failed.


BTW :tipu de la avatar e DANI FILTH, shi nu e gay, ptr cei care nu au auzit de el e solistul trupei CRADLE OF FILTH, cine nu a auzit de aceasta trupa sa caute nishte melodii ptr ca (virgula) canta mishto, asta dak va place black metalul sau gothikul
Memorat
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #45 : Februarie 08, 2006, 13:27:12 »

scuze ptr insistenta dar ma lamureshte shi pe mine cineva pana la urma??
Memorat
filipb
Nu mai tace
*****

Karma: 232
Deconectat Deconectat

Mesaje: 929



Vezi Profilul
« Răspunde #46 : Februarie 08, 2006, 18:07:50 »

Nu fa functie de fiecare data ca sa afli nr. de 0-uri terminale, pentru ca nu trebuie sa incepi numaratoarea de fiecare data de la 0. Uite, de exemplu, iti dau functia de query ( suma numerelor de la 1 la X ) - poate te lamureste:

Cod:
int query(int X)
{ int p; // numarul de biti de 0 terminali;
   int S = 0;

   while (X > 0)
   {
          S += v[X]; // v este AIBul tau
          while ( ((1<<p)  & X) == 0) p++;
          X -= (1<<p);
          p++;
   }
  return S;

}


Update-ul fa-l tu similar Smile
Memorat
silviug
Echipa infoarena
Nu mai tace
*****

Karma: 193
Deconectat Deconectat

Mesaje: 485



Vezi Profilul
« Răspunde #47 : Februarie 08, 2006, 18:58:14 »

Citat din mesajul lui: devilkind
intr-adevar formula aia am gasit-o undeva insa am gasit-o asha cum mi-ai zis u (fara shiftare)  si imi afiseaza 2^x , x fiind nr de zerouri in baza 2, shi dak ii pun acea shiftare imi da exact x (nu asha ar trebui). VEZI CA AI GRESHIT CAND AI CALCULAT 10100 & 10011, E 10000. Shi plus dak ar fi asta ar trebuie sa dea Wrong answer nu run error - memory reference failed.


Intr-adevar am gresit acolo Smile My bad Shhh

Raspunsul lui Filip e la obiect, te lamureste de ce iei TLE si cum ai putea sa scapi de el.

(2^x) >> 1 = (2^x) div 2 != x (pentru multe cazuri)

Eu cred ca tu sa vrei implementezi AIB-uri si nu-ti trebuie numarul de zero-uri terminale ci 2^(numarul de zerouri terminale). Asadar functia initiala fara shiftare will do (si solutia propusa de Filip merge dar cred ca e mai inceata).

Have fun,

Silviu

PS: Stim Cradle .. dar nu ne place Tongue Join the good side man! Smile
 Surrender
Memorat

"Don't gain the world and lose your soul, wisdom is better than silver or gold." [Bob Marley - Jamaican reggae musician & singer (1945 - 1981)]
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #48 : Februarie 08, 2006, 19:49:55 »

intr-adevar ai dreptate am nevoie de 2^x. doar ca eu copil idiot faceam numaru de zerouri terminale shi apoi faceam 2^x, fara sa imi dau seama ca il aveam deja calculat. me stupid.

PS: Gusturile muzicale nu se discuta
Memorat
andreit1
Vizitator
« Răspunde #49 : Martie 07, 2006, 18:18:40 »

Ai citit ce s-a discutat mai sus pe forum? 2^nr_zerouri il calculezi in timp constant? Citirea si afisarea poti sa o faci linistit cu fscanf si fprintf ca intra in timp.
Memorat
Pagini: 1 [2] 3 4 5   În sus
  Imprimă  
 
Schimbă forumul:  

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