1477: 赚钱

1477: 赚钱

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 31   Solved: 9
[ Submit][ Status][ Web Board]

Description

来自F星球的Carol是一个不折不扣的“正版游戏受害者”,在黑色星期五的疯狂购买后,钱包渐空的Carol突然发现TA所使用的游戏交易平台上有个值得留意的地方————集换式卡牌。 集换式卡牌是可以买卖的,卖家和买家都来自社区。由于社区的每个人都可以随时发出新的购买请求,一张热门卡牌的报价甚至每个小时都是不一样的。 F星球的居民每个人都有一些特殊技能,而Carol的技能则是预知未来12小时内要发生的所有“静态事件”,这个“静态事件”当然也包含了某张集换式卡牌12小时内的买家最高报价。而Carol要做的就是规划好这12小时,在低价时买入,高价时卖出,以赚差价填回自己的钱包。 Carol现在手头并没有卡,所以他只能通过买入来获得卡。为了展现自己不滥用特殊技能,Carol决定每次购买只买入一张卡,卖出则不限制数量。但是由于智商有限,Carol并不知道他应该在什么时候买入什么时候卖出,于是他请求你来帮忙。而得知他在滥用特殊技能的你自然不打算帮他,于是你打算只告诉他最多能赚多少。那么请问他最多可以赚多少钱?

Input

输入的第一行给定一个整数T,表示样例数量,接下来每行12个整数c1,c2...c12(1<= c1,c2,c3....<=1000),表示十二小时内某张集换式卡牌的报价。

Output

对于每组样例,均输出一行,表示该12小时内能够获得的最大收益。

Sample Input

2
1 1 1 1 1 1 1 1 1 1 1 2
1 2 3 4 5 6 7 8 9 9 9 10

Sample Output

11
47

#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
int main()
{
    int n;
    cin>>n;
    while(n--){
        int a[12];
        int sum1=0;
        int b[11]={0};
        for(int i=0;i<12;i++){
            cin>>a[i];
        }
        for(int i=0;i<11;i++){
            for(int j=i+1;j<12;j++){
                if(a[j]-a[i]>b[i])b[i]=a[j]-a[i];
            }
        }
        int n1=0;
        for(int i=0;i<11;i++){
            n1+=b[i];
        }
        printf("%d\n",n1);
    }
    return 0;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值