百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,

用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。

~~~~~~~~~

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int i=0,j=0,k=0;
    for (i=1;i<20;i++){
        n=n++;
        for (j=1;j<33;j++){
            n=n++;
            k = 100-i-j;
            if (i*5+j*3+ k/3 == 100 && k%3 == 0){
                printf("the value of cock is:%d\n",i);
                printf("the value of hen is:%d\n",j);
                printf("the value of chicken is:%d\n",k);
                printf("~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
            }
        }
    }

printf("the total of count is:%d\n",n);
system("pause");
return 0;
}

时间复杂度为O(N2),

优化一点如下,记数器从627变为310:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int i=0,j=0,k=0,n=0;
    for (i=1;i<20;i++){
        n=n++;
        for (j=1;j<((100-5*i)/3);j++){
            n=n++;
            k = 100-i-j;
            if (i*5+j*3+ k/3 == 100 && k%3 == 0){
                printf("the value of cock is:%d\n",i);
                printf("the value of hen is:%d\n",j);
                printf("the value of chicken is:%d\n",k);
                printf("~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
            }
        }
    }

printf("the total of count is:%d\n",n);
system("pause");
return 0;
}

如果要成为O(N),则先用方程式多推导,这才是算法的精华。。

先在头脑中过滤,再交给CPU,内存去实施~~

抄其它人的算法如下:

for (int k = 1; k <= 3; k++)
                 x = 4 * k;
                 y = 25 - 7 * k;
                 z = 75 + 3 * k;

推荐BLOG:

http://www.cnblogs.com/huangxincheng/category/401959.html

http://www.cnblogs.com/vamei/default.html?page=1

算法学习之百钱买百鸡相关推荐

  1. python百钱买百鸡问题算法_百钱买百鸡问题的伪代码算法?

    不同的编程语言,对于判断语句,循环语句等的写法是不一样的.但对于同一问题,我们只关心算法,于是就提出了伪代码,统一一下判断语句怎么写,循环语句怎么写,这样无论程序员学的是 C++,还是 JAVA,还是 ...

  2. 经典算法题每日演练——第一题 百钱买百鸡

    经典算法题每日演练--第一题 百钱买百鸡 原文:经典算法题每日演练--第一题 百钱买百鸡 百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, ...

  3. 计算机求百钱买百鸡采用的算法,多种解法求百钱百鸡问题.doc

    多种解法求百钱百鸡问题 学 号: 0121210680225 <算法设计与分析B> 大 作 业 题 目多种解法求百钱百鸡问题学 院计算机科学与技术学院专 业软件工程班 级Sy1201姓 名 ...

  4. 【C++】公元前五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?请设计一个“高效”的算法求解。

    题目分析 公元前五世纪,我国古代数学家张丘建在<算经>一书中提出了"百鸡问题":鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一.百钱买百鸡,问鸡翁.鸡母.鸡雏各几何?请设计一 ...

  5. java while求百钱买百鸡问题_java - 百钱百鸡小算法

    百钱百鸡是一个非常经典的不定方程问题,最早源于我国古代的<算经>,这是古代著名数学家张丘建首次提出的.百钱百鸡问题原文如下: 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买白鸡,问 ...

  6. 枚举法C语言三个马驮东西,【MagO第三期】经典枚举算法题:百钱买百鸡

    原标题:[MagO第三期]经典枚举算法题:百钱买百鸡 01 历史故事 张邱建提出的百钱买百鸡问题: 山东临清的数学家--张邱建,约公元5世纪著名的大数学家.他将毕生的精力投入到算学研究之中,为数学的不 ...

  7. C语言学习:百钱买百鸡问题详解(附源码)

    问题: 中国古代数学家张丘建在他的<算经>中提出了一个著名的"百钱买百鸡问题":鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁.母.雏各几何? 代码: ...

  8. 算法求解“百钱买百鸡”问题

    算法求解"百钱买百鸡"问题 我国古代数学家在<算经>中有一道题:"鸡翁一,值钱五:鸡母一,值钱三:鸡雏三,值钱一.百钱买百鸡,问鸡翁.母.雏各几何?" ...

  9. Java实现算法应用--百钱买百鸡 主要内容:公鸡5元一只,母鸡3元一只,小鸡一元3只。 * 问100块钱怎样可以买100只鸡?

    Java实现算法应用–百钱买百鸡 @author asus 主要内容:公鸡5元一只,母鸡3元一只,小鸡一元3只. 问100块钱怎样可以买100只鸡? 具体代码如下: package package6; ...

最新文章

  1. Python 自然语言处理(一)字频统计
  2. html多个盒子重叠浮动,如何让浮动后的多个盒子水平居中
  3. 乔恩与加菲猫引发的思考
  4. 伦敦帝国学院提出局部特征提取新模式D2D:先描述后检测
  5. Lua参数绑定函数实现方法
  6. 小米手机计算机连接设置方法,小米手机怎么连接电脑并上网?小米手机USB共享上网方法详细图解...
  7. python求和函数详解_python求和函数sum()详解
  8. 发射功率dBm 换算表
  9. python hist bins_python – matplotlib中的Hist:Bins不居中,轴上的比例不正确
  10. uboot引导kernel - 4 -gd bd详解
  11. 【观察】百度搜索开放平台
  12. python绘制拟合回归散点图_matplotlib中散点图的回归线和拟合曲线
  13. 什么样的企业需要舆情优化系统?什么样的企业需要手工监测?
  14. 学生护眼灯色温多少合适?推荐色温在4000K的暖光护眼台灯
  15. 信安软考 第26章 大数据安全需求分析与安全保护工程
  16. 高级测试工程师当初是如何突破瓶颈的?——自来大厂测试总监的感言
  17. c语言莹源码,exp5/wc/client.c · 张雪莹20175227/ISSDF - Gitee.com
  18. 【计量经济学导论】03. 矩阵形式的线性回归模型
  19. OpenCV对像素的操作
  20. 在word中添加mathtype

热门文章

  1. ES6 继承(复习原型链继承)
  2. 《CCIE路由和交换认证考试指南(第5版) (第2卷)》——1.2节构建BGP邻居关系...
  3. UEditor文本浏览器,引号加斜杠解决
  4. java.lang.Runtime
  5. mysql query cache优化
  6. Oracle数据库实例的创建、删除、修改
  7. 转载:CRONTAB格式,命令
  8. Python用selenium获取Cookie并用于登录。
  9. 作业五—个人项目-小学四则运算 “软件”之升级版1
  10. 前端- jquery- 总结