ITPub博客

首页 > > > c++ 最节省材料

c++ 最节省材料

作者:dav2100 时间:2019-09-26 14:31:19 0 删除 编辑

一个长度为L米的材料,需要截成长度为a米和b米的短材料,求两种短材料各截多少根时,剩余的材料最少。

输入

数据有多行,每行三个整数,分别是L,a,b;

输出

每行输出截出a长度和截出b长度材料的根数,结果有多个时,只输出总根数最少或最长材料根数最少的数据。

样例输入

10 2 3

样例输出

2 2

我的怎么错了,求大神。

#include <iostream>
using namespace std;
int main()
{
    int maxa,maxb,l,x,y,min,n,m,i,j,sheng;
    while(cin>>l>>n>>m)
    {
        min=10000;
        maxa=l/n;
        maxb=l/m;
        if(m>n)
        {
            int t=n;//判断大小
            n=m;
            m=t;
        }
        for(i=0;i<=maxa;i++)
            for(j=0;j<maxb;j++)
            {
                sheng=l-i*n-j*m;
                if(sheng<0)
                    continue;
                else
                {
                    if(sheng<=min)
                    {
                        min=sheng;
                        x=i;
                        y=j;
                        if(i<x)
                        {
                            min=sheng;
                            x=i;
                            y=j;
                        }
                        
                    }
                    
                }
            }
            cout<<x<<" "<<y<<endl;
    }
    return 0;
}


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4479/viewspace-3130002/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-10-17

  • 博文量
    176
  • 访问量
    17570