比赛 |
20110923 |
评测结果 |
AAAWWWWWWW |
题目名称 |
拜访奶牛 |
最终得分 |
30 |
用户昵称 |
Citron酱 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2011-09-23 19:46:07 |
显示代码纯文本
#include <fstream>
#define I_F "vacation.in"
#define O_F "vacation.out"
const int MAXn=50000;
struct lb
{
int x;
lb *next;
}*map[MAXn]={NULL};
int n;
int ans[2]={0};
void Input();
void Dfs(const int, const int, const bool);
void Output();
int main()
{
Input();
Dfs(0,-1,false);
Output();
return 0;
}
void Input()
{
lb *temp;
int x,y;
std::ifstream fin(I_F);
fin>>n;
for (short i=1; i<n; i++)
{
fin>>x>>y;
x--, y--;
temp=map[x];
map[x]=new lb;
map[x]->x=y;
map[x]->next=temp;
temp=map[y];
map[y]=new lb;
map[y]->x=x;
map[y]->next=temp;
}
fin.close();
}
void Dfs(const int x, const int y, const bool f)
{
ans[f]++;
for (lb *i=map[x]; i!=NULL; i=i->next)
if (i->x!=y)
Dfs(i->x,x,!f);
}
void Output()
{
std::ofstream fout(O_F);
if (ans[0]>ans[1])
fout<<ans[0]<<std::endl;
else
fout<<ans[1]<<std::endl;
fout.close();
}