• 枚举(百鸡问题)


    直接看题目

    题目描述:
        用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只,z只。编程求解x,y,z所有可能解。
    输入:
        测试数据有多组,输入n。
    输出:
        对于每组输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出。
    样例输入:
    40
    样例输出:
    x=0,y=0,z=100
    x=0,y=1,z=99
    x=0,y=2,z=98
    x=1,y=0,z=99

    直接暴力枚举,见代码

    #include <stdio.h>
    #include <stdlib.h>
    //枚举
    void test_1();
    int main() {
        test_1();
        return 0;
    }
    //枚举(百鸡问题)
    void test_1(){
        int n;
        while (scanf("%d",&n)!=EOF&&n!=0) {
            for (int x = 0; x<=100; x++) {//枚举x
                for(int y = 0;y<=100-x;y++){//枚举y
                    int z = 100-x-y;
                    if (5*x*3+y*3*3+z<=n*3) {//以防1/3精度缺失,等式两边同乘3
                        printf("x=%d,y=%d,z=%d
    ",x,y,z);
                    }
                }
            }
        }
    }
    /**************************************************************
        Problem: 1045
        User: Numen_fan
        Language: C++
        Result: Accepted
        Time:10 ms
        Memory:1020 kb
    ****************************************************************/
  • 相关阅读:
    3.1.3、控制结构
    3.1.2、变量
    3.1.1、渲染模板
    3.1、Jinja2模板引擎
    第3章 模板
    2.6、Flask扩展
    2.5.4、响应
    2.5.3、请求钩子
    2.5.2、请求调度
    2.5.1、程序和请求上下文
  • 原文地址:https://www.cnblogs.com/numen-fan/p/6509269.html
Copyright © 2020-2023  润新知