2771: 练39.3 鸡兔同笼

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:28 解决:10

题目描述

《孙子算经》记载:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?”有若干只鸡和兔同在一个笼子里,从上面数,有$35$个头,从下面数,有94只脚,问鸡和兔各有几只。

输入

无。

输出

一行,分别输出鸡和兔的数量。

样例输入 复制

样例输出 复制

鸡:23 兔:12

提示

#include<iostream>
using namespace std;
int main( )
{
    int ji,tu;
    for(ji=1;ji<=34;ji++) //枚举鸡
        for(tu=1;tu<=23;tu++) //枚举兔
            if(ji+tu==35&&ji*2+tu*4==94) //判断
                cout<<"鸡:"<<ji<<" 兔:"<<tu<<endl;
    return 0;
}


#include<bits/stdc++.h>
using namespace std;
int main(){
    int ji,tu;
    /*假设法 :
	假设全部是鸡,则有70条腿;每一只鸡变成一只兔,腿多了2条; 
	现在多了94-70=24条腿,所以有12只鸡变成兔子,鸡有35-12=23只; 
	*/ 
    tu=(94-35*2)/2;
    ji=35-tu;
    /*
	抬腿法:
	所有鸡抬起腿(只有1条腿,所有兔子站起来(只有2条腿),则有47条腿;
	兔子比鸡多1条腿,所以兔子有 47-35=12只,鸡有35-12=23只; 
	*/
	tu=94/2-35;
	ji=35-tu;
    cout<<"鸡:"<<ji<<" 兔:"<<tu<<endl;
	return 0;
}