2020年全国信息学线上测试活动_普及组_T2 打怪
【题目描述】
哥斯拉打败基多拉后觉得意犹未尽,叫来了n个怪兽跟他操练。然而哥斯拉在战胜基多拉后只剩下了W个能量单位,所以他并不一定能打败所有怪兽。
哥斯拉有一个基础攻击力A,还有一个技能攻击力加成B(释放技能伤害为A+B)。
每一个怪兽都有两个属性,攻击力xi和生命值yi,如果哥斯拉的最大伤害比该怪兽的攻击力xi小,那么哥斯拉就不能战胜它。如果战胜它,则会消耗哥斯拉yi点能量值。
哥斯拉想知道他最多能打败多少个怪兽。
【输入格式】
第1行:两个整数n个怪兽,剩余能量w。
第2行:两个数基础攻击力A,技能攻击力加成B。
第3行-第3+n-1行:每行两个整数,第i个怪兽的攻击力xi,生命值yi。
【输出格式】
只有一个整数,表示哥斯拉能战胜的最大怪兽数量。
【样例输入】
10 30
20 130
120 3
150 2
110 7
180 1
50 8
200 0
140 3
120 2
150 0
1000 10
【样例输出】
7
【说明】
所有数据:n<=5000 a<=50 b<=200 w<=1000
未测试代码:
#include <cstdio>
#include <fstream>
int main(int argc, char *argv[])
{
//freopen("guai.in", "r", stdin);
//freopen("guai.out", "w", stdout);
int n,w,A,B,x,y;
int sum=0;
scanf("%d %d %d %d",&n,&w,&A,&B);
while(n--){
scanf("%d %d",&x,&y);
if(w<=0) break;
if(x>A+B)continue;
if(x<A+B)w-=y;
sum++;
}
printf("%d\n",sum);
//fclose(stdin);
//fclose(stdout);
return 0;
}