#Java编程题-百钱百鸡】的更多相关文章

问题: 百钱百鸡问题.用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1只). 自己的实现,没有什么数据结构,算法,求大神指点!! package com.ckhuang.maven.confused; /** * 程序功能:百钱百鸡问题(一百元买一百只鸡).<br/> * 用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,<br/> * 编程计算共有几种买法(要求每种鸡至少要买1只). * * @autho…
传送门: 袁咩咩的小小博客 百钱百鸡是一个非常经典的不定方程问题,最早源于我国古代的<算经>,这是古代著名数学家张丘建首次提出的.百钱百鸡问题原文如下: 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买白鸡,问翁.母.雏各几何? 大致的意思是,攻击5文钱一只,母鸡3文钱1只,小鸡3只1文钱,如果用100文钱买100只鸡,那么公鸡.母鸡和小鸡各应该买多少只呢? 分析 百钱买白鸡问题中,有三个变量:公鸡数量.母鸡数量.小鸡数量,分别设为x.y.z,这三者应该满足如下关系: x+y+z=100…
解决百钱买鸡问题原本并不困难,关键的是这道题对其进行了升级,测试数据太大,传统的解法,像三重循环,二重循环都会导致超时. 这道题正确的解法应该是结合数学方程进行化简,将其转化为1层循环: x+y+z=n ax+by+c/d*z=m 由上述两个方程联立可用其他量表示出y来.从而只需要枚举x就能解决该题. 在求方程之后注意要化简,只有能整除的时候才进行整除.最后与m比较的时候因为c/d的问题,所以等式两边同时乘以d以消除误差. 最后千万不要加上z%d==0的条件,因为例如当3元买12小鸡的时候,实际…
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> </body> </html> <script> // 百钱百鸡 公鸡2文,母鸡1文,小鸡半文,每种至少一只,100文买100只鸡有多少可能性 // 写条件gj*2 + mj*1…
/* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:baiji.cpp * 作者:常轩 * 完成日期:2016年3月11日 * 版本号:V1.0 * * 问题描述:百钱百鸡,中国古代数学家张秋建在他的<算经>中提出了著名的"百钱买白鸡问题":鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买白鸡,问翁,母, 雏各几何? 用穷举法解决 * 程序输入:无 * 程序输出: */ #includ…
题目-超级百钱百鸡 (shiyancang.cn) 百钱百鸡的加强版 百钱百鸡的话,因为是有范围,所以挨个挨个尝试即可,确定两个,即可确定第三个. 超级百钱百鸡,通过题目的描述,最后可以得到一个二元的式子,然后就是求解.同样的枚举,对于每一个可能的系数 枚举,如果满足,那么即可成立. #include<bits/stdc++.h> using namespace std; int n,cnt; int main() { scanf("%d",&n); for(int…
50道经典的JAVA编程题 (11-15),新年的第一天,继续啦...\(^o^)/~,这50道题都跨年了啊...哈哈 [程序11] TestTN.java 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. package test50; /** * @author VellBibi *[程序11] TestTN.java *题目:有1.2.3.4个数字,能…
这是一次不可思议的编程历程.从2013年的最后一天开始做这份题,中间连续好几天的考试,包括java考试(今天考试的JAVA编程题),直到今天完成了.挺有成就感的...废话不多说了,来电实质性的吧. 全部的题目请转到: 50道经典的JAVA编程题(目录) 自从上次硬盘事故(详见:<这年圣诞-祭奠>),就一直在寻找代码托管,最出名的就是github了,可是我这访问速度极慢啊,提交个东西经常死了...在中国要享受下国外的服务怎个难字了得啊!!!不过还好我大一的时候就接触过http://www.osc…
50道经典的JAVA编程题(46-50),最后五道题了,这是一个美妙的过程,编程真的能让我忘掉一切投入其中,感觉很棒.今天下午考完微机原理了,大三上学期就这样度过了,这学期算是解放了,可是感觉我还是没有进入大学的状态啊,旷课那是太常事了.明天去见我的导师,要求带上寒假计划,还得好好想想啊,要么只能说计划睡觉了...O(∩_∩)O哈哈~ [程序46] TestString.java题目:两个字符串连接程序 javapackage test50; import java.util.Scanner;…
50道经典的JAVA编程题(41-45),苦逼的程序猿,晚上睡不着了编程吧~今天坚持做10道题!发现编程能是我快乐...O(∩_∩)O哈哈~能平静我烦乱的心,剩下5道题留到考试完了再做吧!该睡觉了... [程序41] MonkeyPeach.java 题目:海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一 个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中 ,拿走了一份,第三.第四.第五只猴子都是这样做的…
今天早上考了java, 题目感觉还不错, 共四道题,有一道定义类的没啥意思就没列出来. 这三道题目还是不错的,特别是第一道,大一上学期学linux的时候,那时还没学C语言呢,准确的来说,还不知道什么是编程呢~~~去外面试听了几节linux的课, 那天老师直接复习C语言,可我还没见过C语言长啥样,直接傻眼了.最后布置了一道题,就是这里的第一道题了. 1. 有200个小朋友拉成一个圆圈,从其中一个小朋友开始依次编号1-200,从1号小朋友开始循环1-3报数,数到3的小朋友就退出.编写一个Java应用…
50道经典的JAVA编程题(36-40),今天晚上心情压抑,不爽,继续做题,管它明天考试,我继续我的java,一个周末都在看微机原理看得的很头疼啊~明天该挂科就挂吧,不在乎了~~~ [程序36] Array1.java 题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数 注:我不是很理解这个题,按我的理解来做吧比如n={1,2,3,4,5,6,7,8,9} m=2,则应该得到的n={1,2,1,2,3,4,5,1,2} m=3,则应该得到的n={1,2,3,1,2,3…
50道经典的JAVA编程题(31-35),今天考完了java,在前篇博客里面贴出了题了,见:<今天考试的JAVA编程题>.考完了也轻松了,下个星期一还考微机原理呢,啥都不会,估计今天就做到这了,明天要投入"预习"状态了!!!等全部考试完了会继续完成这50道题的~ [程序31] ArrayConverse.java题目:将一个数组逆序输出.1.程序分析:用第一个与最后一个交换. javapackage test50; /** * @author VellBibi *[程序31…
50道经典的JAVA编程题(26-30),这么晚了,早点睡了要,明早8点考java祝我好运吧!!!晚安~ [程序26]Ex26.java(跳过了,好没意思的题啊)题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母.1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. 使用字符数组搞定 [程序27] SuShu.java题目:求100之内的素数 参考见[程序2] FindPrimeNumber.java java/…
50道经典的JAVA编程题(21-25),明天早上java考试了,还是坚持做题吧...这题比老师的题好多了! [程序21]TestJieCheng.java题目:求1+2!+3!+...+20!的和1.程序分析:此程序只是把累加变成了累乘 javapackage test50; /** * @author VellBibi *[程序21]TestJieCheng.java *题目:求1+2!+3!+...+20!的和 *1.程序分析:此程序只是把累加变成了累乘. */ public class…
50道经典的JAVA编程题 (16-20),用了快一个下午来做这10道题了,整理博客的时间貌似大于编程的时间啊..哈哈 [程序16]Nine.java 题目:输出9*9口诀. 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列. package test50; /** * @author VellBibi *[程序16]Nine.java *题目:输出9*9口诀. *1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列. */ public class Nine { public…
50道经典的JAVA编程题 (6-10),今晚做了10道了,累死了...感觉难度不是很大,就是不知道是不是最好的实现方法啊!希望大神们能给指点哈... [程序6]GCDAndLCM.java 题目:输入两个正整数m和n,求其最大公约数和最小公倍数. 1.程序分析:利用辗除法. 2.辗转相除法基于如下原理:两个整数的最大公约数等于其中较小的数和两数的相除余数的最大公约数. 3.最小公倍数等于两数之积除以最大公约数 package test50; import java.io.BufferedRea…
很多第一次出Java编程题的老师,不知道Java在PTA中是如何处理输入的.写一篇文章供大家参考. 有多种类型输入的编程题: 类型1:固定数量输入 从控制台读入**两个**数,然后将其相加输出. 对于该题可以有如下两种样例输入输出: 样例输入输出1: 输入: 1 2 输出: 3 或者 样例输入输出2: 输入: 1 2 输出: 3 注意: 样例输入对应着输入文件中的内容,比如对应着输入文件0.in,一般来说该文件的最后还要有一个回车,比如1 2后面应有一个回车. 样例输出对应着输出文件的内容,比如…
package com.zuoye.test;//百鸡百钱5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡.public class Baiji { public static void main(String[] args) { int a; int b; int c; int sum; for(a=0;a<21;a++) { for(b=0;b<30;b++) { for(c=0;c<100;c++) { sum=5*a+3*b+c/3; if(sum==100&am…
<?php // 计算小鸡的数量 $count=[]; // 第一个for循环计算公鸡 for ($gj=1;$gj<(100/5);$gj++){ // 第二个for循环计算母鸡 for ($mj=1;$mj<(100/3);$mj++){ $xj=100-$gj-$mj; // 第三个for循环计算小鸡 if ($gj*5+$mj*3+($xj/3)==100){ $count[]=['公鸡'=>$gj,'母鸡'=>$mj,'小鸡'=>$xj]; } } } ?&g…
后天java考试,现在闲着也是闲着,来做做java题吧. 前不久在网上看见了50道java算法编程题,感觉还不错,记得大一学C语言的时候做过一些,现在用java来回顾下吧,也算应付考试吧. 代码要是有啥不完美的地方还请各位积极指出啊,小的还是菜鸟啦,出错难免的哦~~~ 暂时一篇帖子放5道吧,代码比较占地方,等全部做完了发一个目录吧 [程序1] TestRabbit.java 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,…
今天偶尔看到一个博客有贴了五十个编程题,决定以后两天左右做一道题 题目来源:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html 1.题目 一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程 找出1000以内的所有完数. 2.Java实现 Java中的通过创建对象,再来调用方法解决问题思想还是不太熟练 public class ProfectNumber { /* * 定义计算数字的因子总和 */ publ…
题目描述 公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱. 输入格式 无. 输出格式 输出所有方案数,每个方案包括三个数字,分别代表公鸡,母鸡,小鸡要买多少只. 每个方案占一行.每组方案的输出顺序按公鸡只数升序排序,如果相等,按母鸡只数升序排序,如果还相等,就按小鸡的只数排序. 样例输入 无输入. 样例输出 (下面的输出仅为部分输出) 4 18 78 ......…
这份题从2013做到2014啊...哈哈,整理个目录吧.为了好查阅,也为了监督自己好好的去做完这50道题.当然,有些题实在做得没意思就跳过了,或者自己改题了.题目来源于:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html [程序1] TestRabbit.java 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数…
[程序1]题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?    //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数:    1"); System.out.println("第2个月的兔子对数:    1&qu…
1.题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身. 分析:只需要对三位数的数字进行循环(100~999),判断三位数中个十百位上的数的立方和是否与三位数数值相等即可 Java实现 public class FindDaffodilNumber { void DaffodiNumber() { int x,y,z,sum; for(int i=100;i<=999;i++) { x=i%10; y=(i%100-x…
[程序1]    题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数:    1"); System.out.println("第2个月的兔子对数:    1&q…
第一题:输入字符串长度len1,字符串s1,字符串长度len2,字符串s2.从后向前比较,以最短字符串为标准,输出不同的元素的个数. 例如:    输入:s1="1,3,5"   len1=3        s2="2,4,1,7,5"   len2=5 输出:1 函数原型 public int getDiffNum(int len1, String s1, int len2, String s2) [java] : public class HuaWeiTest …
实现代码很简单:   package com.xiaozan.shopping;   import java.util.Arrays;   public class ShoppingCart {          public final static int PRODUCT_1_PRICE = 2000;    // 产品编号第一个数字为1的单价,单位(分)     public final static int PRODUCT_2_PRICE = 1000;    // 其他产品编号的单价,…
1.题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.求第一天共摘了多少. 程序分析:采取逆向思维的方法,从后往前推断. 题目来源:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html 这题比较简单,只需从后往前逆推即可.程序可以通过循环,也可以通过递归实现. Python代码实现…