26791: 找树根和孩子
2015-07-10 09:46
225 查看
题目描述
给定一棵树,输出树的根root,孩子最多的结点max以及他的孩子。
输入
第一行:n(结点个数),m(边数)。
以下m行;每行两个结点x和y,表示y是x的孩子。
输出
第一行:树根:root。
第二行:孩子最多的结点max。
第三行:max的孩子。
样例输入
样例输出
type
treetype=record
father:integer;
num:integer;
child:array[1..100] of integer;
end;
var
tree:array[1..100] of treetype;
n,m:integer;
procedure init;
var e,i,j,k,x,y:integer;
begin
readln(n,m);
for i:=1 to m do
begin
readln(x,y);
tree[y].father:=x;
inc(tree[x].num);
tree[x].child[tree[x].num]:=y;
end;
end;
function root:integer;
var i:integer;
begin
for i:=1 to n do
if tree[i].father=0 then
begin root:=I;exit; end;
end;
procedure find;
var k,i,max:integer;
begin
k:=1; max:=0;
for i:=1 to n do
if tree[i].num>max then
begin k:=i; max:=tree[i].num; end;
writeln(k);
for i:=1 to max-1 do
write(tree[k].child[i],' ');
writeln(tree[k].child[max]);
end;
begin
init; writeln(root); find;
end.
给定一棵树,输出树的根root,孩子最多的结点max以及他的孩子。
输入
第一行:n(结点个数),m(边数)。
以下m行;每行两个结点x和y,表示y是x的孩子。
输出
第一行:树根:root。
第二行:孩子最多的结点max。
第三行:max的孩子。
样例输入
8 7 4 1 4 2 1 3 1 5 2 6 2 7 2 8
样例输出
4 2 6 7 8program p26791;
type
treetype=record
father:integer;
num:integer;
child:array[1..100] of integer;
end;
var
tree:array[1..100] of treetype;
n,m:integer;
procedure init;
var e,i,j,k,x,y:integer;
begin
readln(n,m);
for i:=1 to m do
begin
readln(x,y);
tree[y].father:=x;
inc(tree[x].num);
tree[x].child[tree[x].num]:=y;
end;
end;
function root:integer;
var i:integer;
begin
for i:=1 to n do
if tree[i].father=0 then
begin root:=I;exit; end;
end;
procedure find;
var k,i,max:integer;
begin
k:=1; max:=0;
for i:=1 to n do
if tree[i].num>max then
begin k:=i; max:=tree[i].num; end;
writeln(k);
for i:=1 to max-1 do
write(tree[k].child[i],' ');
writeln(tree[k].child[max]);
end;
begin
init; writeln(root); find;
end.
相关文章推荐
- 你未必是人好,你只是没机会放荡
- [老老实实学WCF] 第八篇 实例化
- 百度地图api实例
- UISearchBar应用
- Solution 26: 左旋转字符串
- oracle客户端不需要配置tnsnames.ora文件直接连接服务器数据库
- NGUI的事件通知架构和源码剖析
- 常见GUI 框架
- jquery禁用form表单中所有的表单项
- 【转载】自学视频教程--数据结构篇
- 26790: 树的数量
- 26790: 树的数量
- 26757:循环链表练习 分数: 100
- 26757:循环链表练习 分数: 100
- 4851:【一维数组】约瑟夫问题 分数: 3
- 【转载】有序拆分
- 【转载】中缀变后缀
- 【转载】后缀表达式求值
- 2015年01月25日
- 2015年01月25日