Pagini: 1 [2]   În jos
  Imprimă  
Ajutor Subiect: 357 Editor  (Citit de 14833 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Robytzza
De-al casei
***

Karma: -49
Deconectat Deconectat

Mesaje: 129



Vezi Profilul
« Răspunde #25 : Iulie 01, 2007, 16:18:02 »

asa e Very Happy am declarat un vector a[3] si eu il parcurgam pana la 1500 ms Embarassed
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #26 : Iunie 19, 2009, 18:00:10 »

Stiu ca solutia mea nu e eficienta... dar merge bine, da corect pe toate testele care mi le dau si toate de pe forum... Nu cumva e o problema cu testul 1?
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #27 : Iunie 19, 2009, 18:06:38 »

Stiu ca solutia mea nu e eficienta... dar merge bine, da corect pe toate testele care mi le dau si toate de pe forum... Nu cumva e o problema cu testul 1?

Nu. Nu e  Smile

Merge si pe astea?

Cod:
****()E
*()*E
*())*E
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #28 : Iunie 19, 2009, 18:22:26 »

am mai adaugat cateva breakuri si uitati ce imi da pentru...

Cod:
10
*****E
(**E
*()*E
*())*E
)E
([)](([)])E
((()))[]]E
(()))[]E
([([])])E
****()E

imi da

Cod:
:)
:)
:(
:)
:(
:(
:(
:(
:)
:)

mie mi se pare ca da bine
Memorat
Abi79
Strain


Karma: 4
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #29 : Iunie 23, 2009, 20:06:22 »

am mai adaugat cateva breakuri si uitati ce imi da pentru...

...

mie mi se pare ca da bine

Da, alea sunt bune.

Dar daca ar fi asta:
Cod:
((**E

A doua steluta sterge prima paranteza si da bine?
Memorat
mathboy
Moderatori infoarena
Nu mai tace
*****

Karma: 150
Deconectat Deconectat

Mesaje: 259



Vezi Profilul
« Răspunde #30 : Iunie 24, 2009, 22:22:30 »

Exact.  Ok
Memorat
yrar
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 17



Vezi Profilul
« Răspunde #31 : Martie 08, 2010, 14:49:03 »

E-uri se pot afla si prin sir sau doar la sfarsit ?
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #32 : Martie 08, 2010, 14:56:23 »

La sfarsit doar.
Memorat
vladtarniceru
De-al casei
***

Karma: 81
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #33 : Martie 19, 2010, 23:10:06 »

mi-a iesit de 100 puncte Boxing Boxing Boxing
ideea este urm:
retii intr-un vector char parantezele si de fiecare data cand ai '*' stergi ultimul caracter.apoi mai iei 4 variabile in care notezi:
-cate ' ( ' ai
-cate ' ) ' ai
-cate ' [ ' ai
-cate ' ] ' ai

apoi verifici daca nr_par_(==nr_par_) si nr_par_[==nr_par_] si daca nu ai alte chestii( de exemplu "( (  [ ) ] ) ")

totusi ce are testul 1 ca am vazut ca pica multi pe el Think . e din cauza ca are '*' la inceput?
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #34 : Martie 20, 2010, 10:24:49 »

Am facut problema, dar iau incorect pe primul test. Am incercat toate testele puse de voi si au mers. Care sa fie problema? Merci
Memorat
miculprogramator
Nu mai tace
*****

Karma: 65
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #35 : Martie 20, 2010, 11:08:52 »

Poate ca testul are mai mult de o * sau ceva asemanator.

P.S : Ar fi foarte fain daca dupa ce rezolvati o problema sa nu postati rezolvarea completa ... Se strica tot farmecul si poate vor si altii sa gandeasca.  Shame on you
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #36 : Martie 20, 2010, 11:36:24 »

Am incercat si imi da bine ... Alte sugestii ?
[LE] Am reusit in sfarsit
« Ultima modificare: Martie 20, 2010, 16:21:42 de către Simoiu Robert » Memorat
zloteanu.adrian
Strain
*

Karma: -9
Deconectat Deconectat

Mesaje: 38



Vezi Profilul
« Răspunde #37 : Octombrie 03, 2010, 14:52:33 »

Am incercat exemplul,toate testele de pe forum,am mai dat si eu cateva,dar tot nu merge...asta e sursa:
Cod:
#include<fstream>
int j,pos,lim2,lim,T,i;
char v[50001],v2[50001];
using namespace std;
int main()
{
ifstream q("editor.in");
ofstream w("editor.out");
q>>T;
for(i=1;i<=T;i++)
  {lim=1;
  q>>v[lim];
  while(v[lim]!='E')
      {if(v[lim]=='*'&&lim>1)
        lim--;
       else
        {if(v[lim]!='*')
        lim++;}
       q>>v[lim];}
  lim2=1;
  pos=0;
  lim--;
  for(j=1;j<=lim;j++)
    if(v[j]=='('||v[j]=='[')
     {v2[lim2]=v[j];
     lim2++;}
    else
     /*{if((v2[lim2-1]=='['&&v[j]==']')||(v2[lim2-1]=='('&&v[j]==')'))
       v2[lim2-1]='-';
      else
       {j=lim+1;
       w<<":(\n";
       pos=1;}}*/ aici se termina ce am modificat
  if(pos==0)
  {for(j=lim2-1;j>=1;j--)
    if(v2[j]=='('||v2[j]==')'||v2[j]=='['||v2[j]==']')
     {w<<":(\n";
     j=-1;}
  if(j==0&&(lim2!=1||(v[1]=='['||v[1]=='('||v[1]=='E')))
   w<<":)\n";
  else
  if(lim2==1)
   w<<":(\n";}}
return 0;}
P.S:luam 70 de puncte,cu 3 tle-uri,si am pus in comment partea schimbata(aproape sigur acolo e o problema).Fac exact ca in solutia oficiala
Memorat
eudanip
Echipa infoarena
Nu mai tace
*****

Karma: 307
Deconectat Deconectat

Mesaje: 703



Vezi Profilul
« Răspunde #38 : Octombrie 03, 2010, 22:13:45 »

Implementeaza si tu mai frumos ca nu cred ca poate intelege cineva ce ai scris acolo. Lasa si tu tab-uri. Thumb up
Memorat
iulishor
Strain


Karma: 3
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #39 : Martie 17, 2011, 08:20:15 »

Poate posta cineva niste teste ceva mai lungi....
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #40 : Martie 17, 2011, 08:59:57 »

Cod:
7
)E
**********E
(((((]]*******[()]E
]]]***[[[***(((***)))***E
((([[[[][[()]]()()]]])))E
*((([[[[][[()]]()()]]])))*E
(((((((([[[[[[[(())]]]]]]]))))))))***)))E
Cod:
:(
:)
:)
:)
:)
:(
:)
Memorat
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #41 : Septembrie 19, 2012, 16:10:14 »

Cod:
23
E
[][][]E
**[]()*E
)E
*****E
(**E
*()*E
*())*E
([)](([)])E
((()))[]]E
(()))[]E
([([])])E
****()E
)E
**********E
(((((]]*******[()]E
]]]***[[[***(((***)))***E
((([[[[][[()]]()()]]])))E
*((([[[[][[()]]()()]]])))*E
(((((((([[[[[[[(())]]]]]]]))))))))***)))E
][)()*E
[[**]()E
[[]]()()E
Cod:
:)
:)
:(
:(
:)
:)
:(
:)
:(
:(
:(
:)
:)
:(
:)
:)
:)
:)
:(
:)
:(
:(
:)
« Ultima modificare: Decembrie 16, 2012, 17:59:01 de către Birisan Razvan » Memorat
GaborGabriel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 9



Vezi Profilul
« Răspunde #42 : Decembrie 14, 2012, 21:49:11 »

Un caz care merita testat Smile. Am pierdut 2 ore din cauza lui.
PS. Programul meu mergea pe toate testele postate dar pica pe testul asta.

1
[
  • **
Memorat
Lizzard
Strain


Karma: -6
Deconectat Deconectat

Mesaje: 8



Vezi Profilul
« Răspunde #43 : Noiembrie 09, 2013, 02:16:09 »

Am nevoie de o idee la problema asta. Tot ce s-a pus aici imi merge dar iau doar 10 puncte, restul WA.
Memorat
Mihai22e
Client obisnuit
**

Karma: 20
Deconectat Deconectat

Mesaje: 74



Vezi Profilul
« Răspunde #44 : Noiembrie 09, 2013, 02:39:27 »

Foloseste o stiva in varful careia sa tii tipul ultimei paranteze deschise, iar cand intalnesti o paranteza inchisa verifici daca este de acelasi tip ca cea din varful stivei si o elmini. In cazul in care paranteza din varful stivei nu coincide cu paranteza intalnita, sirul este gresit parantezat. La sfarsit mai ai de verificat daca stiva este goala.
Memorat
TwoOfDiamonds
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #45 : Noiembrie 17, 2013, 09:07:18 »

Imi reusesc toate testele pe care le-am vazut in celalalte comentarii si totusi iau doar 10 puncte (doar ultimul test). Restul sunt incorecte. Poate cineva sa imi dea un test mai complex?

EDIT: am rezolvat. nu tineam cont ca pot fi mai multe * la rand si verificam aiurea Very Happy
« Ultima modificare: Noiembrie 17, 2013, 10:06:17 de către Daniel Alexandru Radu » Memorat
informatician28
Strain
*

Karma: 6
Deconectat Deconectat

Mesaje: 27



Vezi Profilul
« Răspunde #46 : Martie 24, 2014, 21:12:49 »

Salut!

Toate testele postate pe forumul problemei imi dau corect.
Iau totusi numai 20p.

Ma poate ajuta cineva?
Memorat
cipriancx
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 13



Vezi Profilul
« Răspunde #47 : Noiembrie 07, 2014, 13:01:15 »

Are cineva idee de ce aceasta rezolvare primeste sigsev pe toate testele?
Cod:
#include <stdio.h>
#include <stdlib.h>
 
char sir[600010],c;
int index,rotdesc,patdesc,erori,t;
 
int main()
{
   freopen("editor.in","r",stdin);
   freopen("editor.out","w",stdout);
scanf("%d",&t);
while(t)
{
 
 
   scanf(" %c",&c);
   while(c!= 'E')
   {
       if(c=='*'){ if(index >0) index--; }
       else {index++; sir[index]=c; }
scanf(" %c",&c);
}
int i=1;
while(!erori && i<=index && i<600000)
{
 
    if(sir[i]=='(') rotdesc++;
    if(sir[i]==')') rotdesc--;
    if(sir[i]=='[') patdesc++;
    if(sir[i]==']') patdesc--;
if(rotdesc < 0 || patdesc < 0) erori=1;
   i++;
}
if(!rotdesc && !patdesc) printf(":)\n");
else printf(":(\n");
 
t--;
index=0;
rotdesc=0;
patdesc=0;
erori=0;
}
 
 
 
 
    return 0;
}
Memorat
vladmatei0
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #48 : Aprilie 01, 2016, 21:19:02 »

O chestiune pe care n-am luat-o in seama. La fiecare E intalnit sirul se reseteaza. De exemplu, daca ai (E)E, obtii Sad Sad nu SadSmile
Memorat
Googal
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #49 : Mai 08, 2016, 15:35:17 »

O mica remarca:testele nu acopera cazul in care este un numar egal de paranteze ,dar toate sunt orientate in sens opus.De exemplu : la ]]]][[[[ o sursa care ia 100 de puncte afiseaza "Smile" in loc de  "Sad" Very Happy Very Happy
Memorat
Pagini: 1 [2]   În sus
  Imprimă  
 
Schimbă forumul:  

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