Problem I. S06-14 穷举法(穷举简单这一类题的解法)

马克思手稿中有这样一道趣味数学题:男人、女人和小孩总计30个人,在一家饭店里吃饭,共花了50先令,每个男人各花3先令,每个女人各花2先令,每个小孩各花1先令,请用穷举法编程计算男人、女人和小孩各有几人。

输入

输出

穷举法每一行分别按顺序输出男人、女人和小孩的人数

样例

标准输入复制文本
 
标准输出复制文本
    0   20   10
    1   18   11
    2   16   12
    3   14   13
    4   12   14
    5   10   15
    6    8   16
    7    6   17
    8    4   18
    9    2   19
   10    0   20

解题思路:

1、先判断男人、女人、孩子最多能有多少人(穷举的前提条件)

2、符合穷举答案的条件

3、输出的格式化

#include <iostream>
using namespace std;
int main() 
{
	for(int a=0;a<17;a++) 
	{
		
		for(int b=0; b<=25;b++) 
		{
			
			for(int c=0;c<=30;c++) 
			{
				
				if(a*3+b*2+c==50&&a+b+c==30) //符合穷举的条件
				{
					printf("   %2d   %2d   %2d\n",a,b,c);//注意输出的格式!
				}
			}
		}
	}
	return 0;
}

posted @ 2022-10-03 18:58  131452lin  阅读(100)  评论(0编辑  收藏  举报