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对 ...
一周排行
  • SystemCenterOperatorManager2012SP1之二客户端代理安装
        前面我们进行了SCOM 2012SP1的安装,安装的时候要注意前提条件,尤其是支持 ...
  • 集合:保存多个其他对象的对象,不能保存简单类型List:有序(存放元素的顺序),可重复的集合ArrayList:实质就是一个会自动增长的数组查询效率比较高,增删的效率比较低,适用于查询比较频繁,增删动作较少的元素管理 ...
  • 一.不要备份把安装目录下\vim73\vimrc_example.vim文件中的下面内容注释掉 24 "if has("vms") 25 "  set nobackup     ...
  • MicrosoftVisualStudio2010和MSDN授权白皮书
     Microsoft? Visual Studio? 2010 和 MSDN? 授权白皮书 ...
  •     写总结是个好习惯,最近又有技术同事要派出去学习业务了,向我咨询经验,翻翻以前的总结,像是和以前的自己在说话.以下是关于技术和业务的论述,工作第六年时获得的认识,到第九年.十年的时候回头看,没什么变化:     ...
  • 我的Oracle9i学习日志13--存储结构和关系
    存储结构和关系                     图四 图5  图6         ...
  • Facebook等在线社交平台的发展,让人们的社交关系,得已借助网络这个工具,做出前所未有的延伸,但同时,这样的「快餐社交」 也让人际关系的质量被严重稀释,如果你有点厌倦单单只在显示器前的社交互动模式,那么,Sōsh ...
  • 一.初始化void glutInit(int* argc,char** argv) 这个函数用来初始化GLUT库.对应main函数的形式应是:int main(int argc,char* argv[]); 这个函数 ...
  •  struts2表单标签  Dashboard > WebWork2文档中文化计划 > Tags > Form Tags  WebWork2文档中文化计划Log In     Form Tags 6 ...
  • 最新版Android开发工具 JUN 27TH, 2014 Android Tools ADT Bundle ADT Bundle包含了Eclipse.ADT插件和SDK Tools,是已经集成好的IDE,只需安装好 ...