蓝桥杯-三人年龄

来源:互联网 发布:网络情人 吴玉龙 铃声 编辑:程序博客网 时间:2024/04/28 00:31

三人年龄


三个神秘蒙面人来访F博士。


博士询问他们年龄时,他们说:我们中年龄最小的不超过19岁。我们3人年龄总和为70岁。且我们三人年龄的乘积是所有可能情况中最大的。


请帮助F博士计算他们的年龄,从小到大排列,用逗号分开。


 


参考答案:


19,25,26






#include <stdio.h>#include <stdlib.h>int min(int x,int y,int z){    int mi;    if(x<y)    {        if(x<z)        {            mi=x;        }        else        {            mi=z;        }    }    else    {        if(y<z)        {            mi=z;        }        else        {            mi=y;        }    }    return mi;}int main(){    int x,y,z,min1,m,maxhe=0;    int px,py,pz,pri[3],i,j;    for(x=1; x<70; x++)    {        for(y=1; y<70; y++)        {            for(z=1; z<70; z++)            {                min1=min(x,y,z);                if(min1>19)                    continue;                if(x+y+z==70)                {                    m=x*y*z;                    if(m>=maxhe)                    {                        maxhe=m;                        //printf("%d:%d %d %d\n",maxhe,x,y,z);                        px=x;                        py=y;                        pz=z;                    }                }            }        }    }    pri[0]=px;    pri[1]=py;    pri[2]=pz;    for(i=0;i<3-1;i++)//一共比较n-1轮    {        for(j=0;j<3-1-i;j++)//每轮比较n-1-i次        {            int num;            if(pri[j]>pri[j+1])            {                num=pri[j];                pri[j]=pri[j+1];                pri[j+1]=num;            }        }    }    for(i=0;i<3;i++)    {        printf("%d ",pri[i]);    }    return 0;}


0 0
原创粉丝点击