题解 | 列方程求解 #百钱买百鸡问题#

百钱买百鸡问题

https://www.nowcoder.com/practice/74c493f094304ea2bda37d0dc40dc85b


import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        /*
        列方程求解:
        设购买不同鸡的数量分别为x、y、z;
            z=100-x-y;
        设价钱分别为cx、cy、cz;
            cz=100-5x-3y;
        一钱能买3只鸡仔,
            所以cz=3z;
            解得y=(200-14x)/8;
         所以方程就变成了只需一个未知数x就能知道y和z;
            y=(200-14x)/8;
            z=100-x-(200-14x)/8;
          由于y和z都是根据x求出来的,且都进行了除法,所以实际应用中需要考虑不能小于0,并且为整数
         */

        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            in.nextInt();
            for (int x = 0; x <= 100; x++) {
                int y = (200 - 14 * x) / 8;
                int z = 100 - x - y;
                // 考虑实际应用进行筛选
                if (y >= 0 && z >= 0 && z % 3 == 0 && (200 - 14 * x) % 8 == 0) {
                    System.out.println(x + " " + y + " " + z);
                }
            }
        }

    }
}


全部评论

相关推荐

熊大不大:微信也是华为旗下吧,我看我朋友也是华为工牌写wx
点赞 评论 收藏
分享
08-27 21:03
已编辑
西南石油大学 Java
冷花幽露:大概率是了,京东面试就是这样。我上周一面也是20多分钟,面试官问的很刁钻的问题也答上来了,面完过了几天还是没推进,泡池子,昨天一看挂了。如果一面完第2天没有收到2面邀请,基本上不用抱希望了。如果你的bg是985,面试流程也是和我们一样,20多分钟,唯一区别就是面完他们会很快收到二面邮件,而不像我们泡池子然后挂掉
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务