package com.c813;public class Test { public static void main(String[] args) { for (int i = 0; i < 17; i++) { for (int j = 0; j < 16; j++) { for (int k = 0; k < 51; k++) { if (i*3 + j*2 + k == 50) { System.out.println("男人:" + i + " " + "女人:" + j + " " + "小孩:" + k); } } } } } } 好像结果很多啊
写错了这个才对吧package com.c813;public class Test { public static void main(String[] args) { for (int i = 0; i < 17; i++) { for (int j = 0; j < 16; j++) { if (i*3 + j*2 + 30 - i - j == 50) { System.out.println("男人:" + i + " " + "女人:" + j + " " + "小孩:" + (30 - i - j)); } } } } }
public class PersonCount { /** * @param args */ public static void main(String[] args) { // TODO 自动生成方法存根 final int manMaxNum = 50/3; final int womanMaxNum = 50/2; final int childrenMaxNum = 50/1; for(int i = 1;i<=manMaxNum;i++){ for (int j = 1; j <= womanMaxNum; j++) { for (int k = 1; k <= childrenMaxNum; k++) { if(i+j+k == 30&&i*3+j*2+k*1 == 50){ System.out.println("男人:"+i+";女人:"+j+";小孩:"+k); }
x+y+z=30;
3x+2y+z=50;
x<=10; y<=20&&y%2==0;z<=20;
y=20-2x;
z=10+x;
一个for循环就可以搞定
答案是x从0到10都可以
public static void main(String[] args) {
for (int i = 0; i < 17; i++) {
for (int j = 0; j < 16; j++) {
for (int k = 0; k < 51; k++) {
if (i*3 + j*2 + k == 50) {
System.out.println("男人:" + i + " " + "女人:" + j + " " + "小孩:" + k);
}
}
}
}
}
}
好像结果很多啊
public static void main(String[] args) {
for (int i = 0; i < 17; i++) {
for (int j = 0; j < 16; j++) {
if (i*3 + j*2 + 30 - i - j == 50) {
System.out.println("男人:" + i + " " + "女人:" + j + " " + "小孩:" + (30 - i - j));
}
}
}
}
}
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
final int manMaxNum = 50/3;
final int womanMaxNum = 50/2;
final int childrenMaxNum = 50/1;
for(int i = 1;i<=manMaxNum;i++){
for (int j = 1; j <= womanMaxNum; j++) {
for (int k = 1; k <= childrenMaxNum; k++) {
if(i+j+k == 30&&i*3+j*2+k*1 == 50){
System.out.println("男人:"+i+";女人:"+j+";小孩:"+k);
}
}
}
}
}
}