题目描述

来自F星球的Carol是一个不折不扣的“正版游戏受害者”,在黑色星期五的疯狂购买后,钱包渐空的Carol突然发现TA所使用的游戏交易平台上有个值得留意的地方————集换式卡牌。
集换式卡牌是可以买卖的,卖家和买家都来自社区。由于社区的每个人都可以随时发出新的购买请求,一张热门卡牌的报价甚至每个小时都是不一样的。
F星球的居民每个人都有一些特殊技能,而Carol的技能则是预知未来12小时内要发生的所有“静态事件”,这个“静态事件”当然也包含了某张集换式卡牌12小时内的买家最高报价。而Carol要做的就是规划好这12小时,在低价时买入,高价时卖出,以赚差价填回自己的钱包。

Carol现在手头并没有卡,所以他只能通过买入来获得卡。为了展现自己不滥用特殊技能,Carol决定每次购买只买入一张卡,卖出则不限制数量。但是由于智商有限,Carol并不知道他应该在什么时候买入什么时候卖出,于是他请求你来帮忙。而得知他在滥用特殊技能的你自然不打算帮他,于是你打算只告诉他最多能赚多少。那么请问他最多可以赚多少钱?

输入
多组实例测试,输入的第一行给定一个整数T,表示样例数量,接下来每行12个整数c1,c2...c12(<= c1,c2,c3....<=),表示十二小时内某张集换式卡牌的报价。 输出
对于每组样例,均输出一行,表示该12小时内能够获得的最大收益。 样例输入 样例输出 47

提示

注意:每张卡只能卖一次,并且每个时间点可以选择买或者不买,卖出只能在买后的时间

思路:需要找到在一段区间中最大的价格,

代码:

#include<stdio.h>
#include <iostream>
#include<algorithm>
using namespace std;
int a[],b[];//b数组存当前所能卖的最大的价格
int main()
{
int T,i;
scanf("%d",&T);
while(T--)
{
for(i=;i<=;i++)
scanf("%d",&a[i]);
b[]=;
for(i=;i>=;i--)
{
if(a[i]>b[i+])
b[i]=a[i];
else
b[i]=b[i+];
}
int d=,sum=,num=;
for(i=;i<=;i++)
{
if(a[i]<b[i])//思考等于
{
d++;
num+=a[i];
}
else
{
sum+=d*b[i];
sum-=num;
num=;
d=;
}
}
printf("%d\n",sum);
}
return ;
}

1945 : 卡贩子Carol的更多相关文章

  1. 通用礼品卡接口文档(KFC、必胜客、GAP等)

    通用礼品卡接口文档,集于各商家(KFC.必胜客.GAP等)实体卡和会员卡的API虚拟卡,可用于线上/下消费.移动支付. 1.API 1.1商品列表 接口地址:http://v.juhe.cn/gift ...

  2. 【干货分享】流程DEMO-补打卡

    流程名: 补打卡申请 业务描述: 当员工在该出勤的工作日出勤但漏打卡时,于一周内填写补打卡申请. 流程相关文件: 流程包.xml 流程说明: 直接导入流程包文件,即可使用本流程 表单:  流程: 图片 ...

  3. android计算每个目录剩余空间丶总空间以及SD卡剩余空间

    ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...

  4. xamarin MasterDetailPage点击Master时卡顿现象

    在很多项目中经常会使用到MasterDetailPage的布局方式,而且一般做为主页面来开发,在开发中,发现一个并不算Bug的问题,但是却发生了,以此记录下来,方便大家探讨. 现象是这样的,我开发了一 ...

  5. Android手机越用越卡?

    一直不懂Android手机为什么会越用越卡,而ios就几乎能一直保持流畅度.后来发现这个锅不该google背,而是国内混乱的Android软件开发商的锅.主要是Android对应用没什么限制,而goo ...

  6. C#开发微信门户及应用(36)--微信卡劵管理的封装操作

    前面几篇介绍了微信支付方面的内容,本篇继续微信接口的一些其他方面的内容:卡劵管理.卡劵管理是微信接口里面非常复杂的一个部分,里面的接口非常多,我花了不少时间对它进行了封装处理,重构优化等等工作,卡劵在 ...

  7. SIMLock锁卡功能解析

    一.锁卡背景介绍 锁卡即SIMLock,当手机开机启动或者插入SIM卡时,手机modem侧预置在NV项中的配置信息会与SIM卡中的信息做比对,检测是否匹配.若匹配,则SIM卡可以正常使用.若不匹配,则 ...

  8. GJM :Unity使用EasyAR实现脱卡功能

    首先说下大致思路当卡片离开摄像头时间,ImageTarget-Image的SetActive (false),所以其子物体(model)也就不显示了,因此解决的办法就是在Target (false)时 ...

  9. jquery css3问卷答题卡翻页动画效果

    这个选项调查的特效以选项卡的形式,每答完一道题目自动切换到下一条,颇具特色.使用jQuery和CSS3,适合HTML5浏览器. 效果展示 http://hovertree.com/texiao/jqu ...

随机推荐

  1. 解决Eclipse中.properties文件中文乱码问题

    在.properties文件写注释时,发现中文乱码了,由于之前在idea中有见设置.properties文件的编码类型,便找了找乱码原因 在中文操作系统中,Eclipse中的Java类型文件的编码的默 ...

  2. openssl 检测链路完整

    D:\openssl\bin>openssl s_client -connect www.xxxx.com:443

  3. python1-集合、函数-(全局变量与局部变量)

    集合 # s=set('hello')# print(s)## s=set(['alex','alex','sb'])# print(s) # s={1,2,3,4,5,6} #添加# s.add(' ...

  4. Redis基础入门

    学习redis之前,要了解NoSQL.. 一.NoSql概述 由于关系型数据库很难实现: 1.高并发读写 2.海量数据的高校率存储和访问 3.高可扩展性和高可用性 所以出现NoSql,(Not Onl ...

  5. Problem A: 重载字符的加减法

    Description 定义一个字符类Character,只有一个char类型的数据成员. 重载它的+.-.<<和>>运算符,其中+.-的第二个操作数是int类型的整数n.“+ ...

  6. FINS/TCP_OMRON(1)

    使用FINS/ TCP与欧姆龙PLC沟通 可参考下列教学 using System.Net; using System.Net.Sockets; 上面必须使用; IPAddress ipAddr = ...

  7. 如何快速地开发一个微信小程序

    如何快速地开发一个微信小程序呢?我觉得作为初学者,最好能有一个模板,然后改这个模板. 同样作为初学者,刚开始的时候我有下面的几个问题,后来通过问同学,我弄清楚了. 微信小程序可以连接MySQL或者Sq ...

  8. c#线程池ThreadPool实例详解

    1. 如何查看线程池的最大线程数和最小线程数 static void Main(string[] args) { Console.WriteLine("----------线程池开始,线程I ...

  9. ZT 解决Ubuntu下SublimeText3不能输入中文问题

    git clone https://github.com/lyfeyaj/sublime-text-imfix.git运行脚本 :cd sublime-text-imfix && ./ ...

  10. 玩转BLE(2)_使用bluepy扫描BLE的广播数据

    1. 前言 在linux平台下,bluez是一个很不错的软件,提供了很多基于命令行的测试工具,如hciconfig.hcitool.hcidump.bluetoothctl等.利用这些工具,我们可以方 ...