import java.util.*;
public class Main {
/**
//该段代码仅用于调试,提交时请注释该段代码
class TreeNode<T> {
public T data;
public TreeNode<T> left;
public TreeNode<T> right;
}
*/
public boolean solution(TreeNode<Integer> root) {
if(root ==null){
return false;
}
Queue<TreeNode<Integer>> q = new LinkedList<>();
TreeNode<Integer>p=root;
q.add(p);
int flag = 1;
while (q.isEmpty() == false)
{
p = q.poll();
if(flag == 1){
if(p.left != null && p.right != null){
q.add(p.left);
q.add(p.right);
}
else if(p.left != null && p.right == null){
q.add(p.left);
flag = 0;
}
else if(p.left == null && p.right == null){
flag = 0;
}
else if(p.left == null && p.right != null){
return false;
}
}
else {
if(p.left != null || p.right != null){
return false;
}
}
}
return true;
}
}