【算法】百钱买百鸡题目算法详解及多语言实现

[复制链接]
发表于 2026-2-20 22:11:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
题目形貌



百钱买百鸡题目是一个经典的数学题目,标题要求用100文钱买100只鸡,公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,问公鸡、母鸡、小鸡各买多少只?
目次
题目形貌​编辑
办理方案
Python实现
Java实现
C#实现
C++实现
优化思绪
扩展应用
最佳实践


办理方案

这个题目可以通过摆列法、数学推导法等多种方式办理。下面将分别给出Python、Java、C#、C++的实当代码。
Python实现

暴力摆列法
  1. def chicken_enum():  
  2.     for x in range(0, 21):  # 公鸡最多买20只  
  3.         for y in range(0, 34):  # 母鸡最多买33只  
  4.             z = 100 - x - y  # 小鸡数量  
  5.             if z % 3 == 0 and 5*x + 3*y + z//3 == 100:  
  6.                 print(f"公鸡:{x}只, 母鸡:{y}只, 小鸡:{z}只")  
  7.   
  8. # 调用函数  
  9. chicken_enum()
复制代码
数学推导法
  1. def chicken_math():  
  2.     for x in range(0, 21):  
  3.         y = (200 - 7*x) // 4  # 推导公式  
  4.         if y * 4 == (200 - 7*x):  
  5.             z = 100 - x - y  
  6.             print(f"公鸡:{x}只, 母鸡:{y}只, 小鸡:{z}只")  
  7.   
  8. # 调用函数  
  9. chicken_math()
复制代码
Java实现

暴力摆列法
  1. public class
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表