每天一道英文题,ICPC不自闭(7)

NOI openjudge 02:Cake Baking

题目翻译

一个香蕉蛋糕需要250个面粉,2个香蕉,75个糖和100个黄油,一个巧克力蛋糕需要200个面粉,75个可可粉,150个糖和150个黄油。巧克力蛋糕的利润是45,香蕉蛋糕的利润是40。我们有4000个面粉,6个香蕉,2000个糖,500个黄油和500个可可。问题是为了最大化总利润,我们应该烤多少巧克力蛋糕和香蕉蛋糕。

输入

N/A

输出

第一行:一个整数,表示巧克力蛋糕的数量。

第二行:一个整数,表示香蕉蛋糕的数量。

样例

输入

N/A

输出

not provided

解题思路

直接模拟,你甚至都可以不写代码,一个一个试出来。但问题就在这,我无论怎么写就是不对,到目前为止他还是 0 通过,所以有哪位大神能帮我解决这个问题就好了,我把我模拟的代码奉上,希望对各位有些帮助

代码示例

#include<iostream>
#include<cmath>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

int flour,flour_c,flour_b;//面粉
int banana;
int sugar,sugar_c,sugar_b;
int butter,butter_c,butter_b;
int cocoa;
int profit_c;
int profit_b;
int profit;
int ans;
int cnt;
int x,y;

int main(){
	flour=4000;
	banana=6;
	sugar=2000;
	butter=500;
	cocoa=500;
	profit_b=40;
	profit_c=45;
	flour_b=250;
	sugar_b=75;
	butter_b=100;
	for(int i=0;i<=3;i++){//banana_cake
		flour_c=flour-flour_b*i;
		sugar_c=sugar-sugar_b*i;
		butter_c=butter-butter_b*i;
		if(flour_c>=0&&sugar_c>=0&&butter_c>=0){
			profit=profit_b*i;	
			for(int j=0;j<=6;j++){//chocolate_cake
				if(flour_c>=j*200&&sugar_c>=j*150&&butter_c>=j*150){
					profit+=profit_c*j;
					if(profit>cnt){
						cnt=profit;
						x=i;
						y=j;
					}
					cout<<profit<<endl;
					cout<<"banana: "<<i<<endl;
					cout<<"chocolate: "<<j<<endl;
					profit-=profit_c*j;
				}
			}	
		}
		else continue;
	}
	cout<<y<<endl<<x<<endl;
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值