Count Nodes
#include using namespace std; class Node { public: int val; Node *right; Node *left; Node(int value) { this->val = value; this->right = NULL; this->left = NULL; } }; Node *input_tree() { int val; cin >> val; Node *root; if (val == -1) root = NULL; else root = new Node(val); queue q; if (root) q.push(root); while (!q.empty()) { Node *p = q.front(); q.pop(); Node *myLeft; Node *myRight; int l, r; cin >> l >> r; if (l == -1) myLeft = NULL; else myLeft = new Node(l); if (r == -1) myRight = NULL; else myRight = new Node(r); p->left = myLeft; p->right = myRight; if (p->left) q.push(p->left); if (p->right) q.push(p->right); } return root; } void level_order(Node *root) { if (root == NULL) { cout right) q.push(f->right); } } int count_nodes(Node *root) { if (root == NULL) return 0; int l = count_nodes(root->left); int r = count_nodes(root->right); return l + r + 1; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); Node *root = input_tree(); cout

#include
using namespace std;
class Node
{
public:
int val;
Node *right;
Node *left;
Node(int value)
{
this->val = value;
this->right = NULL;
this->left = NULL;
}
};
Node *input_tree()
{
int val;
cin >> val;
Node *root;
if (val == -1)
root = NULL;
else
root = new Node(val);
queue q;
if (root)
q.push(root);
while (!q.empty())
{
Node *p = q.front();
q.pop();
Node *myLeft;
Node *myRight;
int l, r;
cin >> l >> r;
if (l == -1)
myLeft = NULL;
else
myLeft = new Node(l);
if (r == -1)
myRight = NULL;
else
myRight = new Node(r);
p->left = myLeft;
p->right = myRight;
if (p->left)
q.push(p->left);
if (p->right)
q.push(p->right);
}
return root;
}
void level_order(Node *root)
{
if (root == NULL)
{
cout << "Tree nai " << endl;
return;
}
queue q;
q.push(root);
while (!q.empty())
{
Node *f = q.front();
q.pop();
cout << f->val << " ";
if (f->left)
q.push(f->left);
if (f->right)
q.push(f->right);
}
}
int count_nodes(Node *root)
{
if (root == NULL)
return 0;
int l = count_nodes(root->left);
int r = count_nodes(root->right);
return l + r + 1;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
Node *root = input_tree();
cout << count_nodes(root) ;
}