描述
题解
///使用引用传值
///如果在参数名之前加一个“&”符号,就表示这个参数按照传引用(by ///reference)的方式传递。通过这种方式,在函数内部修改参数的值,
///也会修改到函数的实参
///函数作用说明:
///输入一个子天平,返回子天平是否平衡,并将子天平的总重量保存下来
代码
#include<cstdio>
///使用引用传值
///如果在参数名之前加一个“&”符号,就表示这个参数按照传引用(by ///reference)的方式传递。通过这种方式,在函数内部修改参数的值,
///也会修改到函数的实参
///函数作用说明:
///输入一个子天平,返回子天平是否平衡,并将子天平的总重量保存下来
bool judge(int &W)
{
bool b1=true,b2=true;
int W1,D1,W2,D2;
scanf("%d%d%d%d",&W1,&D1,&W2,&D2);
if(!W1)
b1=judge(W1);
if(!W2)
b2=judge(W2);
///保存子天平的总重量,因为是传引用,所以能够将W1修改为W1+W2
W=W1+W2;
return b1&&b2&&(W1*D1==W2*D2);
}
int main()
{
int W,T;
scanf("%d",&T);
while(T--)
{
if(judge(W))
printf("Yes!\n");
else
printf("No!\n");
}
return 0;
}