百钱买百鸡

简介: 百钱买百鸡

1 问题

从我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?


2 方法

假设鸡翁x只,鸡母y只,鸡雏z只。单看一种鸡得出x,y,z的取值范围

0<=x<=20

0<=y<=33

0<=z<=100

根据题目要求可得出以下式子是成立的

x+y+z=100

5*x+3*y+z/3=100

这里采用循环嵌套的方式穷举出x,y,z的值

在第一层循环,表示鸡翁的范围,定义初始表达式的变量为0,判断的条件取x<=20;

在第一层循环,表示鸡母的范围,定义初始表达式的变量为0,判断的条件取y<=33;

在第一层循环,表示鸡雏的变量为z=100-x-y

判断表达式z%3==0和表达式5*x+3*y+z/3==100是否同时成立,如果成立则输出x,y,z的值,即对应鸡翁,鸡母,鸡雏的值。

public class draft {
   public static void main(String[] args) {
       //表示鸡翁的范围
       for (int x=0;x<=20;x++){
           //表示鸡母的范围
           for (int y=0;y<=33;y++){
               //表示鸡雏的变量
               int z = 100 - x - y;
               if (z%3==0 && 5*x+3*y+z/3==100){
                   System.out.println("鸡翁:"+x+";鸡母:"+y+";鸡雏:"+z);
               }
           }
       }
   }
}


3 结语

在百钱买百鸡的问题中,通过使用循环嵌套的方式穷举出各种鸡的数量。该方法的时间复杂度较高。

目录
相关文章
AcWing 2060. 奶牛选美(每日一题)
AcWing 2060. 奶牛选美(每日一题)
|
4月前
|
算法
人相爱,有人夜里开车看海,有人leetcode第一题都做不出来。
这篇文章介绍了解决LeetCode第一题"两数之和"的方法,提供了题目的描述、输入输出示例,并给出了解决这个问题的算法思路。
7-10 百钱百鸡
百鸡问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。凡百钱买鸡百只,问鸡翁母雏各几何。” 百鸡问题是北魏数学家张丘建在《张丘建算经》中提出的一个世界著名的不定方程问题,它给出了由三个未知量的两个方程组成的不定方程组的解。
7-10 百钱百鸡
|
7月前
洛古 P1002 过河卒
洛古 P1002 过河卒
1314:【例3.6】过河卒(Noip2002)
1314:【例3.6】过河卒(Noip2002)
152 0
|
存储 算法 Java
【AcWing每日一题】4818. 奶牛大学
【AcWing每日一题】4818. 奶牛大学
121 0
|
存储
【蓝桥杯集训·每日一题】AcWing 4309. 消灭老鼠
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 最大公约数
91 0
|
存储 人工智能 算法
【蓝桥杯集训·每日一题】AcWing 3305. 作物杂交
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 Spfa算法
130 0