2825: 收集金币

时间限制: 1 Sec  内存限制: 512 MB
提交: 181  解决: 55
[状态] [讨论版] [提交] [命题人:zzuliacm]

题目描述

小辣在玩奇怪的的小游戏。

在这一关中,游戏的主角的任务是收集金币。

这时有n个事件依次发生,事件分为两种:

1、LOST x 表示主角丢失x枚金币,如果此时主角的金币不足x枚,则主角丢失所有金币。

2、GET x 表示主角获得x枚金币。

主角当然想要获得更多的金币,因此他获得了一个技能:当一个事件发生时,他可以选择跳过。当然,这项技能最多只能使用一次。

现在按顺序给定每个事件,请问主角最后能获得多少枚金币?

输入

第一样一行一个正整数T(T≤10)代表数据组数。

对于每组数据,第一行输入一个正整数n(1≤n≤20000)代表事件的数量。

接下来的n行,每一行输入一个字符串和一个整数x(0≤x≤50000),意义在题面中描述。

输出

对于每组数据,输出一行一个整数,代表最多可以获得的金币数量。

样例输入 Copy

2
3
LOST 10
GET 20
LOST 5
3
GET 20
LOST 5
LOST 10

样例输出 Copy

20
15

来源/分类

#include<bits/stdc++.h>
using namespace std;
const int N=20010;
typedef long long ll;
int main(){ios::sync_with_stdio(false);ll a[N];int n,m;int t;cin>>t;while(t--){memset(a,0,sizeof(a));cin>>n;char s[10];int x;int f=1;int count=0;for(int i=0;i<n;i++){cin>>s>>x;//cout<<x<<endl;if(s[0]=='L'&&f==0){///cin>>x;a[count++]=-x;}else if(s[0]=='G'){f=0;a[count++]=x;}}ll sum1=0;ll ans=0;//   cout<<count<<endl;ll sum=0;for(int i=0;i<count;i++){if(a[i]<0){sum1=sum;for(int j=i+1;j<count;j++){sum1+=a[j];if(sum1<0)sum1=0;}if(sum1<=0)sum1=0;ans=max(ans,sum1);}sum+=a[i];if(sum<0)sum=0;}ans=max(ans,sum);cout<<ans<<endl;}return 0;
}

ZZULIOJ--2825: 收集金币相关推荐

  1. 收集金币(人人网笔试)

    题目描述: 小M来到了一个迷宫中,这个迷宫可以用一个N*M的矩阵表示.在这个迷宫的某些位置中存在金币.一开始小M在迷宫的入口:矩阵的左上角,位置(1,1)处:迷宫的出口位于矩阵的右下角,位置(N,M) ...

  2. 2021年CCPC河南省赛部分题解

    文章目录 2825: 收集金币(状态机dp) 2826: 使用技能(乘法逆元+组合数学) 2827: 欢度佳节(位运算+枚举) 2829: 闯关游戏 (DP) 2834: 小凯的书架 (树状数组+二分 ...

  3. C语言实现植物大战僵尸自动收集阳光(三) 解决收集不全与收集奖杯卡死的问题

    C语言实现植物大战僵尸自动收集阳光(一) 问题分析与寻找基址 C语言实现植物大战僵尸自动收集阳光(二) C语言控制台程序的实现 C语言实现植物大战僵尸自动收集阳光(三) 解决收集不全与收集奖杯卡死的问 ...

  4. Python应用之植物大战僵尸2-功夫世界BOSS关卡无限刷金币

    植物大战僵尸2-功夫世界BOSS关卡无限刷金币 前提 思路 step 1 游戏重新开始 step 2 选择植物 step 3 放置植物 step 4 收集金币 结果 代码 树莓派开机启动设置 本人已经 ...

  5. 登山赛车破解无线金币实现原理分析

    前言:登山赛车(Hill Climb Racing)是一款有趣的休闲游戏.玩家需要驾驶一款赛车跑在山地上,由于山地非常颠簸,需要玩家很好的把握油门和刹车,保证车子就不会翻过来.沿途可以收集金币,用来改 ...

  6. 项目实训(九)——跑酷游戏金币的制作和拾取

    一.前言 我与另外两个组员制作了项目的其中一个单机游戏,类型是2D横屏跑酷游戏.游戏中的角色可以在跳跃与奔跑的过程中收集金币,能够很好地考验和锻炼玩家的反应能力和观察能力.玩家坚持得越久.收集到的金币 ...

  7. 零基础,初学者之 ---伤害门,激光门的制作;玩家获得道具,获得吸金币功能

    一.伤害门,激光门,任何物体经过两个物体之间都会毁灭消失     主要由三个脚本: 1.产生创建脚本CreateCubes脚本,绘制射线检测的Door脚本和CubeMove移动脚本,CubeMove不 ...

  8. 7句话让Codex给我做了个小游戏,还是极简版塞尔达,一玩简直停不下来

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 梦晨 萧箫 发自 凹非寺 量子位 | 公众号 QbitAI 什么,7 ...

  9. 叶杰平:主流强化学习过分简化假设,与真实场景差距较大

    智源导读:决策智能是国家新一代人工智能的重要发展方向,强化学习是实现决策智能的核心技术之一.在强化学习中,智能体与环境进行不断的交互,基于环境的反馈学习如何选择一系列动作,以使长期累积的奖励和最大. ...

  10. Learning C# by Developing Games with Unity 5.x(2nd) 学习

    项目:https://pan.baidu.com/s/1o7IMcZo 1 using UnityEngine; 2 using System.Collections; 3 4 namespace V ...

最新文章

  1. UICollectionView的headerView、footerView使用以及与UITableView加载headerView、footerView的区别...
  2. 解决python3 UnicodeEncodeError: 'gbk' codec can't encode character '\xXX' in position XX
  3. 【PAT乙级】 1015 德才论 (25 分)
  4. 来自艾斯维尔的计算机科学系的期刊排行,研究生必备!
  5. Codeforces 1025G Company Acquisitions (概率期望)
  6. javascript的内置对象以及BOM(定时器,location)
  7. UVA 10269 Super Mario,最短路+动态规划
  8. 项目中有出现过缓存击穿,简单说说怎么回事?
  9. androidStudio导入库文件
  10. Facebook Cache Token Issue
  11. 基于Pytorch实现CNN卷积神经网络-Mnist数据集
  12. 录音文件怎么转换成文字呢?
  13. 详解Java中的Base64原理跟用法
  14. SQL server 插入日期处理
  15. 【https】利用keytool进行证书配置
  16. 腾讯云短信服务错误码列表
  17. 手机六大操作系统优缺点比较
  18. 【python】cholesky
  19. 将平板电脑作为电脑显示器_平板电脑与智能显示器的比较
  20. 【YOLOv7/v5系列算法改进NO.45】首发最新特征融合技术RepGFPN(DAMO-YOLO)

热门文章

  1. 河北科怡档案管理系统连接服务器,档案信息管理系统web端使用说明.docx
  2. 数据挖掘 NLP 之 文本挖掘 文本处理 通用流程
  3. 4种方法解决鼠标反应慢(迟钝)
  4. 集成稳压电源的分类及特性
  5. 移动硬盘拒绝访问怎么修复?
  6. kodi连接远程服务器,私人影音服务器奶妈级入门篇(1)——Jellyfin for Kodi客户端设置方法...
  7. 基于3线spi通信的oled(cubemx图形化编程软件)
  8. 七、树莓派做Aria2下载机
  9. 机器学习——数学基础1,方差平方差标准差均方误差均方根误差
  10. 爬楼梯 java_爬楼梯问题java实现