Papyrus在审判你 • 1年前
using namespace std; int d=0; int sum=0; typedef struct SB{
int data;
SB*left,*right;
}SBnode,*DSB; void create(DSB & root){
int x;
cin>>x;
if(x==-1){
root=NULL;
}
else{
root=new SB;
root->data=x;
root->left=NULL;
root->right=NULL;
create(root->left);
create(root->right);
}
} void it(DSB & root,int d){
if(root==NULL){
return;
}
d=10*d+root->data;
if(root->left==NULL&&root->right==NULL){
sum+=d;
}
if(root->left!=NULL){
it(root->left,d);
}
if(root->right!=NULL){
it(root->right,d);
}
} int main(){
DSB root;
create(root);
it(root,0);
cout<<sum;
return 0;
}
评论:
请先登录,才能进行评论