1 条题解
-
0
自动搬运
来自洛谷,原作者为

梦里调音
咱就说,能不能尝试做出一次重大改变?搬运于
2025-08-24 22:16:32,当前版本为作者最后更新于2020-01-28 22:03:06,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
纯模拟,要理解好题意。
小 Z 把自己的 a 元钱封印了起来,只有当第 b 个事件发生前 1 秒才会解除封印,并保证每次小 Z 现有的钱大于等于封印的钱。
这里可能有点歧义。
这个保证是针对数据而言,也就是我们在第三个操作不用任何判断,只当是直接封印。
然后。。。
十年OI一场空,不开long long见祖宗。
然后整个数组记录封印的钱就好了。
#include <bits/stdc++.h> using namespace std; const int N=1e8+5; unsigned long long m,n,ans;//rt,money,answer unsigned long long f[N];//f[i]表示第i个事件前要解封的钱 int main() { cin>>m; for(unsigned long long i=1,t;i<=m;i++) { n+=f[i]; cin>>t; if(t==1) { unsigned long long a; cin>>a; n+=a; } else if(t==2) { unsigned long long a; cin>>a; if(n<a)ans++; else n-=a; } else{ unsigned long long a,b; cin>>a>>b; f[b]+=a; n=n-a; } } cout<<ans<<endl; return 0; }
- 1
信息
- ID
- 4926
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者