Pagini recente » Cod sursa (job #456224) | Cod sursa (job #1098941) | Cod sursa (job #696691) | Cod sursa (job #582257) | Cod sursa (job #1493652)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("darb.in");
ofstream g("darb.out");
int a[100][100],c[100],viz[100];
int n,prim,ultim,varf,h;
void Read()
{
f >> n;
int x,y;
for(int i = 1; i < n; i++)
{
f >> x >> y;
a[x][y] = a[y][x] = 1;
}
}
void BF()
{
h = 0;
int k;
while(prim <= ultim)
{
varf = c[prim];
bool r = 0;
for(k=1; k<=n; k++)
{
if(a[varf][k] == 1 && viz[k]==0)
{
if (!r)
{
h++;
r=1;
}
ultim++;
c[ultim] = k;
viz[k] = 1;
}
}
prim++;
}
}
int main()
{
Read();
prim = ultim = 1;
viz[1] = 1;
c[prim] = 1;
BF();
int k = c[ultim];
prim = ultim = 1;
for(int i = 1; i <= n; i++)
{
viz[i] = 0;
c[i] = 0;
}
viz[k] = 1;
c[prim] = k;
BF();
g << h;
g.close();
return 0;
}