27 条题解
- 
  0root (zhuqirui123) LV 10 @ 2023-10-07 23:41:49 下面是用C++编写的解决此问题的代码: #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { int n, final; cin >> n >> final; vector<pair<int, int>> attacks(n); for(int i = 0; i < n; i++) { cin >> attacks[i].first >> attacks[i].second; } sort(attacks.begin(), attacks.end()); // 按时间进行排序 int maxTanks = 0; int tanks = 0; int index = 0; for(int time = 0; time <= final; time++) { if(index < n && time == attacks[index].first) { // 如果当前时间有进攻事件 tanks += attacks[index].second; // 增加进攻的坦克数量 index++; } if(tanks > maxTanks) { // 更新最多坦克数量 maxTanks = tanks; } if(time % 2 == 0) { // 每隔一秒造一个战车工厂 tanks++; } } if(maxTanks > tanks) { cout << "twbzuobile" << endl; } else { cout << maxTanks << endl; } return 0; }这段代码首先读取输入的攻击次数和最终攻击时间,然后使用一个vector来存储每次攻击的时间和数量。然后根据时间对攻击进行排序。 接下来,代码使用一个循环模拟每秒的战斗情况。在每秒中,如果有进攻事件,则增加相应的坦克数量。并且每隔一秒造一个战车工厂,增加一个坦克。 最后,代码比较最多拥有的坦克数量和实际的坦克数量。如果最多的坦克数量超过了实际的坦克数量,则输出"twbzuobile";否则,输出最多坦克数量。 
- 
  0@ 2017-06-19 16:34:55好可怕的题 
- 
  0@ 2012-09-23 12:54:04...我忽然发现 
 curimit的题解上 如果curimit无法抵挡陶陶的进攻,那么输出“No Answer!”;
 而题目中 如果curimit无法抵挡陶陶的进攻,那么输出"twbzuobile";
 听谁的????
- 
  0@ 2012-07-23 07:35:30我勒个去 math库都不能用!!!!! 
- 
  0@ 2010-04-08 16:51:06果断ORZcurimit。 要好好学数学,不过我还不会做。 
- 
  0@ 2010-02-27 18:42:46ORZ,我还是不会玩 
- 
  0@ 2009-11-20 22:59:12inline 
- 
  0@ 2009-11-03 21:03:07orz怪盗基德神牛 有60分 
- 
  0@ 2010-04-07 11:28:16编译通过... 
 ├ 测试数据 01:答案正确... 0ms
 ├ 测试数据 02:答案正确... 0ms
 ├ 测试数据 03:答案正确... 0ms
 ├ 测试数据 04:答案正确... 9ms
 ├ 测试数据 05:答案正确... 9ms
 ├ 测试数据 06:答案正确... 41ms
 ├ 测试数据 07:答案正确... 25ms
 ├ 测试数据 08:答案正确... 72ms
 ├ 测试数据 09:答案正确... 41ms
 ├ 测试数据 10:答案正确... 72ms
 ---|---|---|---|---|---|---|---|-
 Accepted 有效得分:100 有效耗时:269ms时限放的太宽了。。。应该卡1秒。 题解: 
 陶陶玩红警 解题报告
 江苏苏州中学 宋文杰
 1,题目描述
 【问题描述】
 陶陶最近开始玩红警了,他玩的是自己MOD的一个红警版本。这个版本是这样的:你只能造两样东西,战车工厂和坦克。最初你有一个战车工厂,然后在接下来的每一秒内你可以有两种选择(假设当前有k个战车工厂):1,建造一个战车工厂;2,建造k辆坦克。注意,战车工厂和坦克是不能同时建造的。
 陶陶在玩了一个月红警后,认为自己红警水平很厉害了。于是他向curimit发了一份挑战书,他还嚣张地说他会对curimit发动N次攻击。第i次攻击在第time[i]秒末,陶陶会使用num[i]辆坦克来进攻,消灭掉curimit家里同等数量的坦克。如果此时curimit家里没有这么多的坦克的话,那么curimit就死翘翘了。
 curimit接到战书后看到看到陶陶如此强大的攻势,被吓得不轻。他想请你帮帮忙,帮他制定一份作战计划(什么时候造战车工厂,什么时候造坦克):curimit希望在抵挡了陶陶的N轮进攻之后,在第final秒末发动最终的总攻击,一举歼灭陶陶的老家。他希望你的作战计划能够在第final秒末造出最多数量的坦克。
 【输入文件】
 输出文件为tank.in。
 第1行为两个整数N,final,含义如题目中所述。
 接下来N行,第i行有两个数time[i]和num[i],含义如题目中所述。
 【输出文件】
 输出文件为tank.out。
 输出文件仅包含一行,如果curimit无法抵挡陶陶的进攻,那么输出“No Answer!”;否则输出第final秒末curimit最多能拥有多少辆坦克。
 【输入样例】
 3 10
 5 3
 7 13
 9 4
 【输出样例】
 8
 【样例解释】
 第1秒:造战车工厂。
 第2秒:造战车工厂。
 第3秒:造战车工厂。
 第4秒:造坦克,当前坦克数:4。
 第5秒:造坦克,当前坦克数:8。
 第5秒:陶陶带了3辆坦克冲了进来,当前坦克数:5。
 第6秒:造坦克,当前坦克数:9。
 第7秒:造坦克,当前坦克数:13。
 第7秒:陶陶带了13辆坦克冲了进来,当前坦克数:0。
 第8秒:造坦克,当前坦克数:4。
 第9秒:造坦克,当前坦克数:8。
 第9秒:陶陶带了4辆坦克冲了进来,当前坦克数:4。
 第10秒:造坦克,当前坦克数:8。
 在第10秒末,curimit家里最多有8辆坦克。
 【数据规模和约定】
 10%的数据中N≤5,final≤10;
 30%的数据中N≤1000,final≤1000;
 100%的数据中N≤100000,final≤109,0≤num[i]≤1018;
 100%的数据中1≤time[1]
- 
  0@ 2009-11-02 15:27:35^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 
- 
  0@ 2009-11-02 14:57:29宋神牛发个题解啥的啊 
- 
  0@ 2009-11-01 18:23:05好好想象人家宋文杰也是NOI金牌的人啊,最难题能让你轻易得做出来就怪了...... 
- 
  0@ 2009-10-31 16:28:52可以一边让陶陶打一边造坦克吗? 
- 
  0@ 2009-10-29 20:41:26这个题在全国冬令营之前,只可能有STD这一个AC程序 
- 
  0@ 2009-10-29 15:53:25不会就……………… 
 OTZ
- 
  0@ 2009-10-29 12:41:58编译通过... 
 ├ 测试数据 01:答案正确... 0ms
 ├ 测试数据 02:答案正确... 0ms
 ├ 测试数据 03:答案错误...
 ├ Hint: 博 ├ 标准行输出
 ├ 错误行输出├ 测试数据 04:答案错误... 
 ├ Hint: 是 ├ 标准行输出
 ├ 错误行输出├ 测试数据 05:答案错误... 
 ├ Hint: 注 ├ 标准行输出
 ├ 错误行输出├ 测试数据 06:运行时错误...|错误号: 216 
 ├ 测试数据 07:答案错误...
 ├ Hint: 要 ├ 标准行输出
 ├ 错误行输出├ 测试数据 08:运行时错误...|错误号: 216 
 ├ 测试数据 09:运行时错误...|错误号: 216
 ├ 测试数据 10:运行时错误...|错误号: 21620分…… 
 我个人感觉像守望者的逃离
- 
  0@ 2009-10-28 22:11:42花了8分钟想出了一个不超时的办法。。。 但是还没想出来。。处理完所有攻击后。怎么算才可以知道最大值啊。。。。。剩下m周目,已有a座工厂,剩下的n周目建工厂,可以造f(n)架坦克。 
 f(n)=(a+n)*(m-n)
 =a*m+m*n-a*n-n^2
 =-n^2+(m-a)*n+a*m
 最大值为n取(m-a)/2>0时,f(n)= -((m-a)/2)^2+(m-a)*(m-a)/2+a*m
- 
  0@ 2009-10-28 18:22:17想了40分钟,没想出来。 
 也许和x^x的单调性有关
 一个子问题可以是问初始有a0工厂b0坦克,求N天后坦克的最大值
 ***|\**|\**|\**|\**|\**|\**|\**|\**|\***|*
 好像是贪心……
- 
  0@ 2009-10-27 12:05:26悲剧啊~~~~~~~~~~~~~~~~~~~~~~~~ 
- 
  0@ 2009-10-26 21:42:32Flag 
 题号 P1679
 类型(?) 其它
 通过 1人
 提交 69次
 **通过率 1% **
 难度 0虐人的通过率~