题解 | #Old Bill# 机试指南 P10

Old Bill

http://www.nowcoder.com/questionTerminal/17a30153e092493e8b4d13f321343927

// 2023-4-14 机试指南P10

int main()
{
    int i,j,x,y,z,univalence,n;
    int flag=0;
    int sum=0;//花费的总数
    while(scanf("%d",&n)!=EOF)
    {
        scanf("%d%d%d",&x,&y,&z);
        //因为是想输出最大单价,于是将总花费从大到小递减
        for(i=9;i>=1;i--)//万位
        {
            for(j=9;j>=0;j--)//个位
            {
                sum=i*10000+x*1000+y*100+z*10+j;
                if(sum%n==0)//说明可以取整,也就是可以求出单价
                    {
                        univalence=sum/n;//如果可以求出,这就是最大单价
                        flag=1;//标志 如果是1 说明可以找到
                        break;
                    }
            }
            if(univalence==sum/n)//在第一个循环后,如果找到了最大单价,则直接跳出两个循环,再用一个break
            {
                printf("%d %d %d\n",i,j,univalence);
                break;

            }

        }
         if(flag==0)//说明遍历所有的i j都没有找到整数单价
                printf("0\n");

    }
    return 0;
}
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务