Pagini: [1] 2   În jos
  Imprimă  
Ajutor Subiect: 033 Bool  (Citit de 13810 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
fluffy
Echipa infoarena
De-al casei
*****

Karma: 71
Deconectat Deconectat

Mesaje: 146



Vezi Profilul
« : Aprilie 01, 2004, 00:35:35 »

Aici puteţi discuta despre problema Bool.
Memorat
cavendish
Strain
*

Karma: 2
Deconectat Deconectat

Mesaje: 43



Vezi Profilul WWW
« Răspunde #1 : Ianuarie 30, 2005, 03:53:47 »

domino,
la problema asta nu iau nicicum testul 4. Si dupa ce m-am chinuit un pic mi-am facut si ceva generator si o verificare ok:
http://www.cavendish.as.ro/bool.html
tot nu-mi ia testu ala.

Folosesc arbori care seamana cu cei de la algoritmul clasic de scriere polona (sau poloneza? Smile).

Testu ala m-ar ajuta destul de mult.
mersi
Memorat
domino
Echipa infoarena
Nu mai tace
*****

Karma: 281
Deconectat Deconectat

Mesaje: 1.340



Vezi Profilul WWW
« Răspunde #2 : Ianuarie 30, 2005, 16:34:29 »

Citat din mesajul lui: cavendish
domino,
la problema asta nu iau nicicum testul 4. Si dupa ce m-am chinuit un pic mi-am facut si ceva generator si o verificare ok:
http://www.cavendish.as.ro/bool.html
tot nu-mi ia testu ala.

Folosesc arbori care seamana cu cei de la algoritmul clasic de scriere polona (sau poloneza? Smile).

Testu ala m-ar ajuta destul de mult.
mersi


T-am pus aici testul 4 (sper ca asta sa fie, nu mai tin minte daca s-au mai schimbat testele pe la problema asta):
Cod:
((NOT (J) AND (X)) AND (NOT (B AND U)) AND NOT (NOT ((R) OR (D)))) OR (NOT (NOT (T AND A)) OR ((L) AND (O) OR NOT U))
100
GPTGVCEKKRKZXBKDWGCZSMRTRUYEIVGYDGOMIMJNZJZUBJWCDNPPLTXSCQYMJJMFZPUDQFJCSWDQOXZWKQLDWHBLTWSUMMYEEZVY

Cod:
1111111111111111111111111000000000000000000111111111111111111111111111111111011111111100000111111111

Ah, si nu folosesc arbori, ci recursivitate indirecta
Memorat
cavendish
Strain
*

Karma: 2
Deconectat Deconectat

Mesaje: 43



Vezi Profilul WWW
« Răspunde #3 : Ianuarie 30, 2005, 17:13:47 »

Cod:

...

Am scos sursa ..
Memorat
domino
Echipa infoarena
Nu mai tace
*****

Karma: 281
Deconectat Deconectat

Mesaje: 1.340



Vezi Profilul WWW
« Răspunde #4 : Ianuarie 30, 2005, 20:38:48 »

Am rulat ultima sursa care o trimisesei pe info-arena pe testul 4 pe calculatorul pe care sunt evaluate sursele si nu afiseaza corect (afiseaza doar 1-uri). Banuiesc ca e ceva de initializare de variabile, nu stiu exact.. incearca sa testezi si sub linux.
Memorat
cavendish
Strain
*

Karma: 2
Deconectat Deconectat

Mesaje: 43



Vezi Profilul WWW
« Răspunde #5 : Ianuarie 30, 2005, 23:47:10 »

Na, am mai facut modificari care nu afectau algoritmu (destule), si tot aceeasi branza  Very Happy. Nu-mi dau seama care-i problema si cum deocamdata n-am linux o las moarta. Eventual fac direct o rezolvare recursiva gen analizor sintactic dupa gramatica expresiei.

Oricum, mersi... Smile
Memorat
rss1987
Strain


Karma: -6
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #6 : Februarie 18, 2005, 19:05:33 »

vreau si eu un test intre 6-9 la problema asta cu nu-mi gasesc hiba. oricate teste i-as da merge. Mad
Memorat

RSS
u-92
Vizitator
« Răspunde #7 : Noiembrie 17, 2005, 21:42:40 »

si eu am facut tot cu resursivitate indirecta.. numai ca desi la testul de mai sus imi da corect.. evaluatorul imi da doar 10 puncte pe ultimul test.
in principiu fac ca la evaluarea unei expresii aritmetice, cand intalnesc NOT vad daca dupa el e paranteza, atunci returnez !expresie(), altfel !variabila()..
nu prea mai stiu ce sa fac ca sa iasa.. aveti vreo idee?
Memorat
u-92
Vizitator
« Răspunde #8 : Noiembrie 24, 2005, 21:43:58 »

nu vrea sa iasa.. testul care e mai sus e testul 4 sau a fost schimbat? pt ca daca a ramas e cam aiurea ca obtin raspunsul corect si la evaluare nu..
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #9 : Decembrie 05, 2005, 22:44:41 »

exista posibilitatea ca intre 2 caractere, sa existe spatiu, inclusiv intre caracterele aceluiasi cuvant?..de ex "AND" poate fi scris "A ND"?
Memorat

... lipsa de inspiratie ...
mastermage
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #10 : Decembrie 05, 2005, 23:46:01 »

Citat din mesajul lui: cristy
exista posibilitatea ca intre 2 caractere, sa existe spatiu, inclusiv intre caracterele aceluiasi cuvant?..de ex "AND" poate fi scris "A ND"?

nu
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #11 : Decembrie 08, 2005, 22:17:35 »

am si eu o intrebare...nu m-am chinuit prea mult la problema asta...ce-i drept...am incercat cu ecuatia poloneza...dar, am o nelamurire...la exemplu, de ce dupa prima evaluare, solutia este 1?...adica, la inceput, vectorul de variabile este pe adevarat, sa zicem 1, si fals pt 0,

V[A]=1 V=1 V[C]=1

dupa prima schimbare, V[A] se face 0,

V[A]=0 V=1 V[C]=1

si expresia

A AND ((B OR NOT C) OR ((TRUE)))

se poate scrie ca fiind

0 AND ((1 OR NOT 1) OR ((1)))

care se calculeaza astfel:

0 AND ((1 OR 0) OR ((1)))

0 AND (1 OR ((1)))

0 AND (1 OR 1)
 
0 AND 1

0

si afisam 0, de ce nu e bine?  :cry:
Memorat

... lipsa de inspiratie ...
ditzone
Vizitator
« Răspunde #12 : Decembrie 08, 2005, 22:43:04 »

Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #13 : Decembrie 09, 2005, 17:54:23 »

scuze...am citit gresit...din nou... Fighting
Memorat

... lipsa de inspiratie ...
PuMa
Strain


Karma: 3
Deconectat Deconectat

Mesaje: 12



Vezi Profilul
« Răspunde #14 : Ianuarie 25, 2006, 13:00:56 »

La pb asta sigur nu a fost skimbat testul 4?? Eu am rulat testul care e pe forum si imi da corect, totusi evaluatorul imi da doar 80p  Embarassed .
Memorat

Totul e relativ!
megabyte
Client obisnuit
**

Karma: 45
Deconectat Deconectat

Mesaje: 74



Vezi Profilul
« Răspunde #15 : Februarie 24, 2006, 21:17:58 »

Surrender ma poate ajuta si pe mine careva, ma chinui la bool de mai bine de o luna
 am construit o prima varianta pe care iau 50 puncte , da nu formam bine expresia poloneza postfixata ( invarteam operatorii de acelasi rang si nu ii puneam unde trebuie) si imi dadea la vreo trei wrong answer si la 2 TLE.
Am corectat dupaia erorile din formarea expreiei si ca sa mearga mai rapid evaluarea am folosit listele.Expresia o formez folosind stive sau mai bine vedeti voi:
Cod:

void fposfx(char s[],stiva* pol)
{
   unsigned n=strlen(s),i;
   char c;
   stiva oper;
   oper.init();
   for(i=0;i<n;i++)
   {
     if(este_var(s[i]))pol->pune(s[i]);
     else
     if(este_op(s[i]))
       if(oper.vida()) oper.pune(s[i]);
       else{
    if(este_op(oper.a[oper.vf])==este_op(s[i]))
{
  pol->pune(oper.scoate());
  oper.pune(s[i]);
}
      else if(este_op(oper.a[oper.vf])>este_op(s[i]))
    {
      while(!oper.vida()&&este_op(oper.a[oper.vf])==2)
pol->pune(oper.scoate());
      oper.pune(s[i]);
    }
     else if(este_op(oper.a[oper.vf])<este_op(s[i])) oper.pune(s[i]);

  }
     else
     if(s[i]==')')
     {
while(oper.a[oper.vf]!='(')
pol->pune(oper.scoate());
c=oper.scoate();
     }
     else if(s[i]=='(') oper.pune(s[i]);
   }
   while(!oper.vida())
    pol->pune(oper.scoate());
   pol->a[(pol->vf)+1]=0;
}

 sirul de caractere s este o varianta mai simpla a expresiei din fisierul de intrare de exemplu A AND NOT B devine A&!B.
 In fine cu varianta asta iau numai 30 puncte, ma intreb de ce???a si era sa uit care este rangul operatorilor pt ca o varianta in care and si or is de aceeasi rang iau 30 si cand pun not>and>or iau numai 20??
PS: am pus si eu testul 4 si imi da exact rez ala
 :cry: please help!!
Memorat

Toate computerele asteapta cu aceeasi viteza.
azotlichid
Echipa infoarena
Nu mai tace
*****

Karma: 50
Deconectat Deconectat

Mesaje: 260



Vezi Profilul
« Răspunde #16 : Februarie 25, 2006, 13:35:53 »

Eu zic ca te chinui prea mult la ea. O implementare relativ "taraneasca" ia lejer 100 de puncte.

Hint : vezi ce se intampla daca ai "NOT NOT A..."
Memorat
mocke
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 19



Vezi Profilul WWW
« Răspunde #17 : Septembrie 23, 2006, 17:45:07 »

am o problema...am testat testul 4 (care este pe forum) si imi da acelasi rezultat (ca output-ul) si pe Win si pe Linux ...cred ca este o problema cu evaluatorul  Brick wall ?!?! Ma poate ajuta cineva si sa-mi spuna ce afiseaza sursa mea pe cele 2 teste (3 si 4)...ca nu ma prind dak as fi gresit niste indici sau altceva! Eu rezolv cu forma poloneza post fixata si folosesc numai stive implementate manual...si am testat sa vad dak imi depaseste indicele pt stiva!  Cry
Am mai testat si pe alte exemple pe Linux/Win si nu am probleme...

Memorat

oricine greseste...nu oricine invatza
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #18 : Septembrie 23, 2006, 19:56:06 »

nu e problema cu evaluatorul. eu am rezolvat-o acum 2 zile folosind recursivitate indirecta.
Memorat

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


Karma: 0
Deconectat Deconectat

Mesaje: 19



Vezi Profilul WWW
« Răspunde #19 : Septembrie 23, 2006, 21:49:14 »

ok...dar tot as dori sa stiu ce afiseaza sursa mea pe testele 3-4 ca sa ma pot prinde makr unde gresesc...pt ca am testat si pe Win/Linux si testele imi merg...   Think
Memorat

oricine greseste...nu oricine invatza
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #20 : Martie 28, 2007, 10:41:16 »

enuntul e putin gresit.
Citat
e1 OR e2   - e1 si e2 - expresii logice
Trebuia sa fie e1 sau e2 dupa parerea mea.
Memorat
azotlichid
Echipa infoarena
Nu mai tace
*****

Karma: 50
Deconectat Deconectat

Mesaje: 260



Vezi Profilul
« Răspunde #21 : Martie 28, 2007, 12:33:10 »

acolo se defineste recursiv o expresie (spunand ca fiecare dintre "e1" si "e2" este expresie logica), nu se explica semnificatia operatorului "OR" (aceasta considerandu-se cunoscuta  Whistle)
Memorat
maria_p
Strain


Karma: 69
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #22 : August 30, 2007, 17:07:19 »

am facut o rezolvare recursiva, care pentru testul 4(citat mai sus)imi da corect(am compilat pe Win...n-am Linux)...am dat alt test de la mine cu NOT NOT si imi da corect...si totusi am luat doar 10 puncte(ultimul test sad)...nu-mi dau seama de greseala...ma puteti ajuta? Cry Brick wall Confused Cry Cry Think  Don't get it
« Ultima modificare: August 30, 2007, 17:14:09 de către parcalabescu daniela maria » Memorat
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #23 : Septembrie 01, 2007, 14:08:28 »

vezi cand citesti numarul N sa ai grija sa treci la urmatoarea linie.
adik ceva de genul asta ar trebui sa fie

Cod:
scanf("%ld\n",&n);

nu

Cod:
scanf("%ld",&n);

Si eu luam tot 10 puncte pe ultimul test din cauza asta.
Memorat
maria_p
Strain


Karma: 69
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #24 : Septembrie 02, 2007, 16:40:33 »

mersi Smile...o sa modific acum...
LE:n-a mers...tot 10 puncte...o las,poate mai incolo ii gasesc o alta rezolvare Cry
« Ultima modificare: Septembrie 02, 2007, 16:48:28 de către parcalabescu daniela maria » Memorat
Pagini: [1] 2   În sus
  Imprimă  
 
Schimbă forumul:  

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