九度oj-1045

题目描述:

用小于等于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 <iostream>
using namespace std;
int main(){
    float x,y,z,n;
    while(cin>>n){
        for(x=0;x*5<=n;x++){
            for(y=0;y*3<=n;y++){
                z=100-x-y;
                if((5*x+3*y+z/3)<=n){
                    cout<<"x="<<x<<",y="<<y<<",z="<<z<<endl;
                }
            }
        }
    }
    return 0;
}

作者提醒:

题目很简单,就是一个二重循环就可以搞定的事

这真的是我找到最多字的提醒了