哈尔滨工业大学 百鸡问题(java)

题目描述
    用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只,z只。编程求解x,y,z所有可能解。
输入描述:
    测试数据有多组,输入n。
输出描述:
    对于每组输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出。
示例1
输入
复制
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
import java.util.*;
import java.io.*;
import java.math.*;
import java.text.* ;
public class Main
{
	public static void main(String[] args) {
		try {
			BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			String str;
			while((str=br.readLine()) != null) {
				 double n = (double)Integer.parseInt(str);
				 double sum = 0;
				 for(int i = 0; i <= 100; i++) {
					 if(i*5 > n) break;
					 for(int j = 0; j <= 100; j++) {
						int k = 100-i-j;
						sum = 5.0*i+3.0*j+(1.0/3.0)*k;
						if(sum <= n) System.out.println("x="+i+",y="+j+",z="+k);
						else break;
						if(sum > n) break;
					 }
				 }
			}				 
		} catch(IOException e) {
			e.printStackTrace();
		}
	}
}



发布了231 篇原创文章 · 获赞 22 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43306331/article/details/104246833