十个无聊又有趣的网站,第一ppt模板免费下载,出词,wordpress无法更换头像对给定的有N个节点#xff08;N0#xff09;的二叉树#xff0c;求叶节点元素之和。
输入格式: 第一行是一个非负整数N#xff0c;表示有N个节点
第二行是一个整数k#xff0c;是树根的元素值
接下来有N-1行#xff0c;每行是一个新节点#xff0c;格式为 r d e …对给定的有N个节点N0的二叉树求叶节点元素之和。
输入格式: 第一行是一个非负整数N表示有N个节点
第二行是一个整数k是树根的元素值
接下来有N-1行每行是一个新节点格式为 r d e 三个整数
r表示该节点的父节点元素值保证父节点存在d是方向0表示该节点为父节点的左儿子1表示右儿子e是该节点的元素值。
输出格式:
树中叶节点元素之和 保证在整型变量范围之内。
输入样例: 对于图片中的二叉树
3
20
20 0 10
20 1 25#include iostream
#include map
using namespace std;
typedef struct node
{int data;int left,right;
}TNode;
int main()
{int n;cinn;map int ,intm;int book[n]{0};//用来记录是否有孩子可用来判断是否为叶子节点TNode * tree new TNode[n];int k;cink;m[k]0;if(n1){coutk;return 0; }for(int i1;in;i){int r,d,e;cinrde;book[ m[r] ] 1;m[e]i;tree[i].data e;if(d0)tree[m[r]].left i;else if(d1)tree[m[r] ].right i;}int total0;for(int i0;in;i){if(book[i]0)totaltree[i].data;}couttotal;return 0;
}