Pagini recente » Cod sursa (job #2600200) | Cod sursa (job #1270554) | Cod sursa (job #1873340) | Cod sursa (job #2368566) | Cod sursa (job #132618)
Cod sursa(job #132618)
#include<stdio.h>
struct Nod {
int info;
Nod *urm;
};
int t,i,n,j,x,y,mr;
Nod *st[100002],*fin[100002],*q,*del;
int tplgc[100002],viz[100002],sir[100002],nr,max,frv[100002],k;
int bucla()
{
int op=1;
while (op<10) {op--;op++;}
return 0;
}
int free(Nod *&prim)
{
Nod *p=prim,*q;
while (p!=NULL) {q=p;p=p->urm;delete q;}
prim=NULL;
}
int insert(Nod *&ultim, int val)
{
Nod *p= new Nod;
p->info=val;
ultim->urm=p;
p->urm=NULL;
ultim=p;
}
int df(int s)
{
Nod *i;
viz[s]=1;
for(i=st[s];i!=NULL;i=i->urm)
if (!viz[i->info])
df(i->info);
tplgc[tplgc[0]--]=s;
return 0;
}
int main()
{
freopen("zvon.in","r",stdin);
freopen("zvon.out","w",stdout);
scanf("%ld",&t);/*
for(i=1;i<=2;i++)
{
scanf("%ld",&n);
tplgc[0]=n;
for(j=1;j<n;j++)
{
scanf("%ld %ld",&x,&y);
if (x>100000) bucla();
if (st[x]==NULL)
{
insert(st[x],y);
fin[x]=st[x];
}
else insert(fin[x],y);
}
/* df(1);
for(j=n;j>0;j--)
{
nr=0;
max=0;
for(q=st[tplgc[j]];q!=NULL;q=q->urm)
{
frv[sir[q->info]]++;
nr++;
if (max<sir[q->info]) max=sir[q->info];
}
for(k=max,mr=1;k>=0&&nr;k--)
if (frv[k])
{
if (sir[j]<k+mr+frv[k]-1) sir[j]=k+mr+frv[k]-1;
nr-=frv[k];
mr+=frv[k]-1;
frv[k]=0;
}
free(st[tplgc[j]]);
}
printf("%ld\n",sir[1]);
for(j=1;j<=n;j++)
{
viz[j]=0;
sir[j]=0;
st[j]=NULL;
fin[j]=NULL;
}
}*/
return 0;
}