这也是道水题,睡觉去了。
#include<iostream>
using namespace std;
bool mobile(int& W) {
int W1, W2, D1, D2;
bool b1 = true, b2 = true;
cin >> W1 >> D1 >> W2 >> D2;
if(!W1) b1 = mobile(W1);
if(!W2) b2 = mobile(W2);
W = W1 + W2;
return b1 && b2 && (W1 * D1 == W2 * D2);
}
int main() {
int T, W, Case = 0;
cin >> T;
while(T--) {
if(Case++) cout << endl;
mobile(W) ? cout << "YES\n" : cout << "NO\n";
}
return 0;
}