题解 | #鸡兔同笼#

鸡兔同笼

https://www.nowcoder.com/practice/fda725b4d9a14010bb145272cababef1

贪心策略:
要求最少的数,先尽可能找到拥有脚数最多的动物,依次递减。
要求最多的数,先尽可能找到拥有脚数最少的动物,依次递增。
因为本题鸡有4只脚,兔有2只脚,若为奇数,则一定无解。

#include<iostream>
using namespace std;
int calMin(int feet){
    int min_res=0;
    min_res+=feet/4;
    feet=feet%4;
    min_res+=feet/2;
    return min_res;
}
int calMax(int feet){
    int max_res=0;
    max_res+=feet/2;
    return max_res;
}
int main(){
    int feet=0;
    int minnum=0,maxnum=0;
    while(cin>>feet){
        if(feet%2!=0){//脚为奇数,一定不存在动物
            minnum=maxnum=0;
        }
        else{
            minnum=calMin(feet);
            maxnum=calMax(feet);
        }
        cout<<minnum<<" "<<maxnum<<endl;

    }
}

全部评论

相关推荐

11-27 12:43
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
10-17 16:07
门头沟学院 Java
牛牛大你18号:在汇报,突然弹出来,,领导以为我在准备跳槽,刚从领导办公室谈心出来
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务