java算法---五家共井

古代数学巨著《九章算数》中有这么一道题叫“五家共井,甲二绠(汲水用的井绳)不足,如(接上)乙一绠;乙三绠不足,如丙一绠;

丙四绠不足,如丁一绠;丁五绠不足,如戊一绠;戊六绠不足,如甲一绠,皆及。

意思就是说五家人共用一口井,甲家的绳子用两条不够,还要再用乙家的绳子一条才能打到井水;乙家的绳子用三条不够,还要再用丙家的绳子

一条才能打到井水;丙家的绳子用四条不够,还要再用丁家的绳子一条才能打到井水;丁家的绳子用五条不够,还要再用戊家的绳子一条才能打

到井水;戊家的绳子用六条不够,还要再用甲家的绳子一条才能打到井水。

最后问:井有多深?每家的绳子各有多长?

算法分析:根据题目可以列的一下方程(len为井深)

len1*2+len2 = len

len2*3+len3 = len

len3*4+len4 = len

len4*5+len5 = len

len5*6+len1 = len

进一步化简

len1=len2+len3/2

len2=len3+len4/3

len3=len4+len5/4

len4=len5+len1/5

从上面算式可以得到len3是2的倍数,len4是3的倍数,len5是4的倍数,len1是5的倍数。

代码实现:

 !=  !=  < == * a + b;

            Console.WriteLine("a={0},b={1},c={2},d={3},e={4} ------h={5}\n", a, b, c, d, e, h);

            Console.Read();
        }
    }
}
更多相关文章
  • 经典算法题——五家共井
    古代数学巨著<九章算数>中有这么一道题叫“五家共井,甲二绠(汲水用的井绳)不足,如(接上)乙一绠:乙三绠不足,如丙一绠: 丙四绠不足,如丁一绠:丁五绠不足,如戊一绠:戊六绠不足,如甲一绠,皆及. 意思就是说五家人共用一口井,甲家的绳子用两条不够,还要再用乙家的绳子一条才能打到井水:乙家的 ...
  • 题目要求        问题描述:        古代数学巨著<九章算数>中有这么一道题叫“五家共井,甲二绠(汲水用的井绳)不足,如(接上)乙一绠:乙三绠不足,如丙一绠:丙四绠不足,如丁一绠:丁五绠不足,如戊一绠:戊六绠不足,如甲一绠,皆及.        翻译成白话意思就是:五家人共用 ...
  •  不知道大家对java的简单数据类型是否了解,下面针对Java的五种类型简单数据类型表示数字和字符,进行详细的讲解和分析.        一.简单数据类型初始化        在Java语言中,简单数据类型作为类的成员变量声明时自动初始化为默认值,除非显式地声明.简单数据类型为某一方法声明局部变量时 ...
  • 2015年1月,阿里巴巴旗下的阿里云RDS团队正式受邀加入WebScaleSQL.这是WebScaleSQL第一次邀请中国团队加入其中, 阿里云 RDS团队也将作为全球第五家公司成员,与Facebook, Google, Twitter和Linkedin这样的世界顶级团队并肩一起改进MySQL.We ...
  • 一个Java算法问题求解 目前,在做一个东西,遇到了一个算法问题,总感觉没找到最优算法. 问题:已知两个集合A.B,其中B集合是通过A集合经过删除.修改.添加操作后所得结果,求B相对A的变化情况(添加了.删除了哪些元素,哪些元素修改了?哪些元素没有改变)? 问题先简化一步,把A.B集合视为两个int ...
  • 1.排列计算 /*[程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... */ package cn.com.flyw ...
  • 这裡的「有成」,是「有成就」的意思.创业毕竟很难定义「成功」,但「有成就」稍微简单一些 — 创造出了一个营收与利润长期成长的公司.给很多员工工作机会与很好的照顾.帮客户创造了很多价值.帮股东赢得了很好的投资报酬.帮社会带来了正面影响 — 这些,都是许多创业者想要拥有的成就.而如果你去分析那些能够达到 ...
  • 题一: /** * 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,  * 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少对? * 分析:  * 第一个月:1对  * 第二个月:1对 * 第三个月:2对  * 第四个月:3对  * 第五个月:5对 ...
一周排行
  • 原文地址:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/html5-localstorage/html5提供两种新的客户端存储数据的方法:loca ...
  • 拜读<JavaScript高级程序设计> --- 站在巨人的肩上 动态JS.动态样式就是页面加载时不存在,但将来通过DOM操作动态添加的脚本:包括加载外部文件和添加内部代码块两种:动态加载的外部文件能够立 ...
  • RHEL6.0下yum源的配置
     # ls /media此时我们看到已经成功挂载官方镜像至/media下了.# vim / ...
  • 1号店的分布式搜索引擎的架构实践
    “11.11”是一年一度的电商盛宴,为了准备这个一年内最大规模的促销,1号店各条战线都在紧 ...
  • 如果你在美国, 你可能已经厌倦了那些关于Spotify这个产品的消息了. Spotify是一款免费的在线音乐点播软件,它允许用户通过电脑或手机,随意地欣赏1300万首免费歌曲.仅管这项服务还没有能够与那些主要的唱片公 ...
  • 下午闲来无事,就搞个批量密码修改工具玩玩...#!/usr/bin/env pythonimport paramikoimport timeip_list=('ip1','ip2')log_file=open('mp ...
  • 多表联合查询时候,小表尽量放左边,因为hive会把最后一个当做大文件放磁盘扫描,把前面的尽量放入内存: Sort by 与 order by的区别是 sort by 只是reduce 范围内的排序,而order by ...
  • 摘自:http://www.cnblogs.com/xdp-gacl/p/3707243.html 在JavaWeb开发中,常使用绝对路径的方式来引入JavaScript和CSS文件,这样可以避免因为目录变动导致引入 ...
  • 基于端口的虚拟主机
    1. 解压缩a) Tar zxvf httpd-2.2.9.tar.gz–C /usr/s ...
  • php农历日历PHP代码: <?  #农历每月的天数  $everymonth=array(                    0=>array(8,0,0,0,0,0,0,0,0,0,0,0,29, ...