Pagini recente » Cod sursa (job #530415) | Cod sursa (job #976258) | Cod sursa (job #2092916) | Cod sursa (job #239195) | Cod sursa (job #2041202)
#include <fstream>
#include <cstring>
#include <vector>
using namespace std;
ifstream fin("evaluare.in");
ofstream fout("evaluare.out");
vector<int> l,v,lnr,lcif;
int i,n,s1,poz,in[110],sari[110],nr,out[110];
char sir[110];
int build()
{
++i;
if(int(sir[i])-48>=0 && int(sir[i])-48<=9)
{
nr=nr*10+int(sir[i])-48;
build();
}
else
{
lnr.push_back(nr);
nr=0;
}
}
int main()
{
fin.getline(sir,110);
i=0;
while(sir[i]!=NULL)
{
if(sir[i]=='(')
{
l.push_back(i);
}
if(sir[i]==')')
{
in[++s1]=l[l.size()-1];
out[s1]=i;
l.pop_back();
}
++i;
}
n=i;
//out[++s1]=n;
//in[s1]=0;
for(int k=1;k<=s1;++k)
{
for(i=in[k]+1;i<out[k];++i)
{
if(int(sir[i])-48>=0 && int(sir[i])-48<=9)
{
poz=i;
nr=int(sir[i])-48;
build();
lcif.push_back(i-poz);
fout<<lnr[lnr.size()-1]<<" "<<lcif[lcif.size()-1]<<"\n";
}
}
}
fout<<sir;
return 0;
}