输入一个树状天平,根据力矩相等原则判断是否平衡。如图6-5所示,所谓力矩相等就是 W1D1 = W2D2 ,其中 W1 和 W2 分别表示天平左右两边的砝码重量,D为距离。
采用递归方式输入,每个天平的格式为 W1, D1, W2, D2 当 W1 || W2 == 0时,表示砝码实际上是一个子天平,接下来会描述这个子天平,当 W1 = W2 = 0时,会先描述左子天平,然后再描述又子天平。
要点:
- 树状天平,且采用递归方式输入,因此采用递归方法解题
- 需要的东西是天平左边的质量以及左边如果是天平是否平衡,右边同理,最后判断该天平是否平衡,作为返回true的条件。
#include<bits/stdc++.h>
using namespace std;
bool solve(int& m