#include <stdio.h>
#include <math.h>
int main()
{
int a,b,c,n,cost,flag=0;//a男人 b女人 c小孩 n输入的人数 cost输入的花费 flag标志数
scanf("%d %d",&n,&cost);
for(a=0;a<=cost/3;a++)//假设cost=12,男人的最大人数为12/3=4人,可得男人的最大人数等于总花费/3
{
for(b=0;b<=cost/2;b++)//假设cost=12,女人的最大人数为12/2=6人,可得女人的最大人数等于总花费/2
{
c=n-a-b;
if(c>=0&&a+b+c==n&&3*a+2*b+c==cost)//设置小孩的人数大于等于0,不然输出将包括负数情况,abc满足数量关系式则答案成立,反之题目无解
{
flag=1;//标志数改变寻找到答案
printf("%d %d %d\n",a,b,c);
}
}
}
if(flag==0)//标志数不变题目无解
{
printf("No answer");
}
return 0;
}
ZZULIOJ1075: 聚餐人数统计
最新推荐文章于 2024-09-12 19:02:20 发布