Sicily 1093 Air Express

直接暴力枚举即可

// Problem#: 1093
// Submission#: 2694482
// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
// URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
// All Copyright reserved by Informatic Lab of Sun Yat-sen University
#include<iostream>
#include<cstdio>
using namespace std;

int main() {
    int t = 1;
    int w1, w2, w3;
    int r1, r2, r3, r4;
    while (cin >> w1) {
        cin >> r1 >> w2 >> r2 >> w3 >> r3 >> r4;
        printf("Set number %d:\n", t++);
        int n;
        while(cin >> n && n) {
            int price, add = 0;
            int minprice;
            if (n <= w1) {
                minprice = n * r1;
                price = (w1 + 1) * r2;
                if (price < minprice) {
                    minprice = price;
                    add = w1 + 1 - n;
                }
            }
            else if (n <= w2) {
                minprice = n * r2;
                price = (w2 + 1) * r3;
                if (price < minprice) {
                    minprice = price;
                    add = w2 + 1 - n;
                }
            }
            else if (n <= w3) {
                minprice = n * r3;
                price = (w3 + 1) * r4;
                if (price < minprice) {
                    minprice = price;
                    add = w3 + 1 - n;
                }
            }
            else {
                minprice = n * r4;
                add = 0;
            }
            printf("Weight (%d) has best price $%d (add %d pounds)\n", n, minprice, add);
        }
        printf("\n");
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值