看懂题目基本可做,水题
#include <iostream>
using namespace std;
int weight[4],rate[4],w;
int main(int argc, char const *argv[])
{
int t = 1;
while(cin >> weight[0] >> rate[0])
{
cin >> weight[1] >> rate[1] >> weight[2] >> rate[2] >> rate[3];
cout << "Set number " << t++ << ":" << endl;
while(cin >> w && w)
{
int cost, add = 0;
if(w <= weight[0])
{
cost = w*rate[0];
if(rate[1]*(weight[0]+1) < cost)
{
cost = rate[1]*(weight[0]+1);
add = weight[0]+1-w;
}
if(rate[2]*(weight[1]+1) < cost)
{
cost = rate[2]*(weight[1]+1);
add = weight[1]+1-w;
}
if(rate[3]*(weight[2]+1) < cost)
{
cost = rate[3]*(weight[2]+1);
add = weight[2]+1-w;
}
}
else if (w <= weight[1] )
{
cost = w*rate[1];
if(rate[2]*(weight[1]+1) < cost)
{
cost = rate[2]*(weight[1]+1);
add = weight[1]+1-w;
}
if(rate[3]*(weight[2]+1) < cost)
{
cost = rate[3]*(weight[2]+1);
add = weight[2]+1-w;
}
}
else if(w <= weight[2])
{
cost = w*rate[2];
if(rate[3]*(weight[2]+1) < cost)
{
cost = rate[3]*(weight[2]+1);
add = weight[2]+1-w;
}
}
else cost = w*rate[3];
cout << "Weight (" << w << ") has best price $" << cost << " (add " << add << " pounds)"<< endl;
}
cout << endl;
}
return 0;
}