其他分享
首页 > 其他分享> > UVA839 天平 Not so Mobile

UVA839 天平 Not so Mobile

作者:互联网

UVA839 天平 Not so Mobile
在这里插入图片描述
在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
#define debug(x) cout<<"#  "<<x<<" "<<endl;
typedef long long ll;
const ll mod=2147483647;
const ll N=1e5+7;
/*输入一个子天平,返回子天平是否平衡,参数w修改子天平的总重量*/
bool solve(ll &w)
{
    ll wl,wr,dl,dr;
    bool bl=true,br=true;
    cin>>wl>>dl>>wr>>dr;
    if(!wl)bl=solve(wl);
    if(!wr)br=solve(wr);
    w=wl+wr;//通过引用变量来计算此天平的总重量并修改w的值以传回答案;
    return bl&&br&&(wl*dl==wr*dr);//如果当前的天平是平衡的且其子树(如果有的话)也是平衡的,那么这整棵树都是平横的
}
ll t,w;
int main()
{
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);
    //read(t);
    cin>>t;
    while(t--)
    {
        if(solve(w))cout<<"YES"<<endl;
        else cout<<"NO"<<endl;
        if(t)cout<<endl;
    }
    return 0;
}
繁凡さん 发布了58 篇原创文章 · 获赞 58 · 访问量 5797 私信 关注

标签:cout,Mobile,天平,wl,UVA839,so,wr,solve
来源: https://blog.csdn.net/weixin_45697774/article/details/104475118