那我问你

卡塔库栗  •  18天前


#include<iostream>
#include<set>
using namespace std;
set<int> s;
void dfs(int rv) {
	int left, right;
	cin >> left;
	if (left != -1) {
		dfs(rv + left);
	}
	cin >> right;
	if (right != -1) {
		dfs( rv + right);
	}
	if (left == -1 && right == -1) {
		s.insert(rv);
	}
}
int main() { 
	int root,tsum;
	cin >> root ;
	dfs(root);
	cin >> tsum;
	if (s.find(tsum) != s.end()) {
		cout << "yes";
	}
	else cout << "no";
	return 0;
}

评论:

请先登录,才能进行评论