bool func(struct TreeNode* s, struct TreeNode* t)
{
if (!s && !t) return true;
else if (!s || !t) return false;
else if (s->val != t->val) return false;
return func(s->left,t->left) && func(s->right,t->right);
}
bool isSubtree(struct TreeNode* s, struct TreeNode* t){
if (!s) return false;
return func(s,t) || isSubtree(s->left,t) || isSubtree(s->right,t);
}