UVa 839 (递归方式读取二叉树) Not so Mobile
2014-09-21 22:56
531 查看
题意:
递归的方式输入一个树状天平(一个天平下面挂的不一定是砝码还可能是一个子天平),判断这个天平是否能满足平衡条件,即W1 * D1 == W2 * D2.
递归的方式处理输入数据感觉很巧妙,我虽然能理解,但自己是写不出来的。
这里的参数是传引用,所以是在递归回来的时候才会赋值的。
代码君
递归的方式输入一个树状天平(一个天平下面挂的不一定是砝码还可能是一个子天平),判断这个天平是否能满足平衡条件,即W1 * D1 == W2 * D2.
递归的方式处理输入数据感觉很巧妙,我虽然能理解,但自己是写不出来的。
这里的参数是传引用,所以是在递归回来的时候才会赋值的。
//#define LOCAL #include <iostream> using namespace std; bool solve(int& w) { int w1, d1, w2, d2; bool ok1 = true, ok2 = true; cin >> w1 >> d1 >> w2 >> d2; if(!w1) ok1 = solve(w1); if(!w2) ok2 = solve(w2); w = w1 + w2; return ok1 && ok2 && (w1*d1 == w2*d2); } int main(void) { #ifdef LOCAL freopen("839in.txt", "r", stdin); #endif int T, w; cin >> T; while(T--) { if(solve(w)) cout << "YES\n"; else cout << "NO\n"; if(T) cout << endl; } return 0; }
代码君
相关文章推荐
- UVA 839 Not so Mobile (递归建立二叉树)
- UVA839 Not so Mobile【二叉树】【递归】
- 例题6-9UVA839 - Not so Mobile 递归访问二叉树
- uva 839 (Not so mobile)天平 ---递归输入
- uva839-Not so Mobile-二叉树的DFS
- (UVA - 839) Not so Mobile(递归+引用,树的先序遍历)
- UVa 839 Not so Mobile (DFS二叉树)
- uva839 Not so Mobile (重建二叉树)
- UVa 839 Not so Mobile(树的递归输入)
- UVa - 839 - Not so Mobile(二叉树的DFS)
- UVa 839 - Not so Mobile【递归】
- Uva839 Not so Mobile 【递归输入】【例题6-9】
- UVA 839 Not so Mobile(二叉树经典题)
- UVA 839 Not so Mobile(二叉树|DFS)
- uva 839 - Not so Mobile
- UVA839 - Not so Mobile
- UVA 839 - Not so Mobile
- UVa 839-Not so Mobile(天平)
- UVA 839 Not so Mobile
- uva 839 - Not so Mobile