小球

题目描述
有R个红色盒子和B个蓝色盒子,还有R个红色小球和B个蓝色小球。每个盒子只能装一个小球,每个小球都要放在一个盒子里。如果把一个红色小球放在一个红色盒子里,那么得分是C。如果把一个蓝色小球放在一个蓝色盒子里,那么得分是D。如果把一个红色小球放在一个蓝色盒子里,那么得分是E。如果把一个蓝色小球放在一个红色盒子里,那么得分也是E。现在给出R,B,C,D,E。应该如何放置这些小球进盒子,才能使得总得分最大?输出最大的总得分。

输入
一行,5个整数,分别是R,B,C,D,E。(1 ≤ R ≤ 100,1 ≤ B ≤ 100, -1000 ≤ C,D,E ≤ 1000)

输出
一个整数,最大总得分。

样例输入
复制样例数据
2 3 100 400 200
样例输出
1400

#include <stdio.h>
#include <math.h>
#include <iostream>
using namespace std;
int main()
{
	int a,b,c,d,e,s;
	cin>>a>>b>>c>>d>>e;
	if(a>b)
		s=b*2*e+(a-b)*c;
	else
		s=a*2*e+(b-a)*d;
	cout<<max(s,a*c+b*d)<<endl;
	return 0;
}

一开始也想得比较多,后来发现要么同色球到同色盒,要么分别装,都要把一个盒子装满,求得最大的就可以。

posted on 2018-12-09 17:27  湫叶  阅读(316)  评论(0编辑  收藏  举报

导航