码迷,mamicode.com
首页 > 其他好文 > 详细

鸡兔同笼

时间:2018-03-01 19:54:24      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:scan   body   print   amp   通过   can   div   std   clu   

#include <stdio.h>
#include <math.h>

/**
【题目】鸡兔同笼
已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡的数目和兔的数目。如
果无解,则输出No answer。
样例输入:
14 32
样例输出:
12 2
*/

/**
【分析】
设鸡有a只,兔有b只,则a+b=n,2a+4b=m,联立解得a=(4n-m)/2,b=n-a。
在什么情况下此解“不算数”呢?首先,a和b都是整数;其次,a和b必须是非负的。
*/

int main()
{
    int n,m;
    scanf("%d%d",&n,&m);

    int chick_num,rabbit_num;


    chick_num = n - (m-2*n) /2;
    rabbit_num = (m-2*n) / 2;

    if (rabbit_num < 0 || chick_num < 0) {
        printf("No answer\n");
    } else {
        printf("%d %d\n",chick_num,rabbit_num);
    }

    return 0;
}

点评:有时候计算机不需要知道过程。过程你可以自己通过数学公式计算。计算机只负责计算输出就行了,至于里面的原理,需要你自己计算。

鸡兔同笼

标签:scan   body   print   amp   通过   can   div   std   clu   

原文地址:https://www.cnblogs.com/jiqing9006/p/8489723.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!