天平 Not so Mobile UVa 839

题述
输入一个树状天平,根据力矩相等原则判断 是否平衡。如图所示,所谓力矩相等就是WlDl=WrDr,其中Wl和Wr分别为左右两边砝码的重量,D为距离。采用递归(先序)的方式输入:每个天平的格式为Wl,Dl,Wr,Dr,当Wl或Wr为0时,表示该“砝码”实际上是一个子天平,接下来会描述这个子天平。当Wl=Wr=0时,会先描述左子天平,然后是右子天平。
样例输入
1
0 2 0 4
0 3 0 1
1 1 1 1
2 4 4 2
1 6 3 2
样例输出
YES

代码如下

#include <iostream>using namespace std;bool solve(int &W){int W1,D1,W2,D2;bool b1=true,b2=true; //初始化默认左右天平都平衡cin>>W1>>D1>>W2>>D2;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;    //W用来存储天平总质量,这道题其实没用到,但是如果有这样的要求,这道题就给了思路cin>>T;while(T--){if(solve(W))cout<<"YES"<<endl;elsecout<<"NO"<<endl;if(T)cout<<endl;}return 0;
}

天平问题 Not so Mobile UVa 839相关推荐

  1. Not so Mobile UVA - 839

    题目链接:https://vjudge.net/problem/UVA-839 题目大意:输入一个树状天平,根据力矩相等原则,判断是否平衡.  如上图所示,所谓力矩相等,就是Wl*Dl=Wr*Dr.  ...

  2. UVA - 839 Not so Mobile

    输入一个树状天平,根据力矩相等原则判断是否平衡.如图所示,所谓力矩相等,就是Wl Dl=Wr Dr,其中Wl和Wr分别为左右两边砝码的重量,D为距离. 采用递归(先序)方式输入:每个天平的格式为Wl ...

  3. (二叉树DFS)天平UVa 839

    题目 输入一个树状天平,根据力矩相等原则判断是否平衡.如图6-5所示,所谓力矩相等,就是WlDl=WrDr,其中Wl和Wr分别为左右两边砝码的重量,D为距离.采用递归(先序)方式输入:每个天平的格式为 ...

  4. UVA 839 Not so Mobile 数据结构

    题目链接: UVA 题目大意: 给出一颗树, 给出每个叶子的权值和力矩, 问这棵树平衡不平衡 解题思路: 由于叶子节点的输入是递归给出的, 所以编写递归进行输入比较好 代码: #include < ...

  5. UVA 839 Not so Mobile

    UVA_839 这个题目虽然是树的结构,但我们可以不必把树的结构建立起来,因为后面可以不必再遍历树了,读入数据的过程本身就是一个遍历树的过程,在这个过程中可以把每个节点的权值计算出来,之后就只需要扫描 ...

  6. UVa 839 天平

    分析:这是DFS又一个经典题目,符合DFS的理念一路搜到底,再回头. 主要难度在于递归边界的书写上.(这个题的类型非常重要) 代码如下: #include <iostream> #incl ...

  7. 【三种解法】Not so Mobile UVA - 839_19行代码AC

    立志用最少的代码做最高效的表达 Before being an ubiquous communications gadget, a mobile was just a structure made o ...

  8. python构建二叉树_python--使用递归的方式建立二叉树

    树和图的数据结构,就很有意思啦. # coding = utf-8 class BinaryTree: def __init__(self, root_obj): self.key = root_ob ...

  9. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

最新文章

  1. 我所了解的Linux运维技术
  2. db2查看表结构_mysql误删数据库表的frm文件和ibd文件?试试这样恢复
  3. Windows 市场份额十年来首次跌破 90%
  4. python魔法方法好难_一篇干货好文,轻松掌握python魔法方法
  5. PHP语言Yii框架,Yii框架多语言站点配置方法分析【中文/英文切换站点】
  6. 结合领域驱动设计的SOA分布式软件架构
  7. 生成器 python0 1 8 27 64_python 生成式和生成器
  8. 快速开平方取倒数的算法
  9. ubuntu14.04 安装pip vitualenv flask
  10. java 得到bean的属性_获取javaBean所有属性及类型.doc
  11. Linux之centos7 VMware安装教程
  12. win10的js文件-bat脚本-开启移动热点
  13. eclipse中jsp页面 page报错问题
  14. java贪吃蛇难度设计_Java贪吃蛇应用的设计与实现
  15. 专门查英语单词的软件_查英语单词的工具
  16. cmd修改计算机睡眠、休眠时间,批量命令
  17. df满足条件的值修改_python – 如何根据其他列中的条件将pandas df列中的多个值更改为np.nan?...
  18. sql 字段逗号分割
  19. 金融数字化平台建设的三大误区和破局之道
  20. 从中医的角度认识感冒

热门文章

  1. 10进制转换为16进制
  2. python 同花顺thstrader_GitHub - lg28702426/THSTrader-1: 量化交易。同花顺免费模拟炒股软件客户端的python API。(Python3)...
  3. [转]vs 2008 下载 VS2008简体中文正式版迅雷高速下载
  4. 如何规划UI图标图集
  5. 将网页内容保存为本地html方便解析
  6. 深圳区块链电商高峰论坛久零区块链品牌发展之路圆满成功
  7. 【方向盘】IDEA的代码审查能力,来保证代码质量
  8. 写一个rtrim()函数消除字符串后面的空格字符。编main函数调用测试它。
  9. linux固态硬盘寿命,SSD固态硬盘耐久度实验终分出胜负了
  10. 计算机网络期末复习笔记