题意:判断某个天平是否平衡,输入以递归方式给出。
题解:递归着输入,顺便将当前质量作为 &参数 维护一下,顺便再把是否平衡作为返回值传回去。
坑:最后一行不能多回车
附:天秀代码
#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std; bool solve(int &w) { int w1, d1, w2, d2; cin >> w1 >> d1 >> w2 >> d2; bool b1 = 1, b2 = 1; if (!w1)b1=solve(w1); if (!w2)b2 = solve(w2); w = w1 + w2; return b1&&b2 && (w1*d1 == w2*d2); } int main() { int t,w; cin >> t; while (t--) { solve(w) ? puts("YES") : puts("NO"); cout << endl; } //system("pause"); }