龙的战争 Dragon ‘s War

news/2024/11/22 14:10:01/

题目描述

Kirito现在被困在一个MMORPG游戏当中,为了离开这个游戏,他现在必须和 n 条龙进行战斗,Kirito和这 n 头龙都有一个力量值,用整数表示,Kirito最初的力量值为s 。如果在Kirito和第 i 头龙 的对决当中(1 \leq i \leq n),Kirito的力量不大于龙的力量{x}_i ,那么,Kirito将输掉对决并死亡。如果Kirito的力量大于龙的力量,那么,Kirito将打败这条龙并且升级获得额外的力量提升。

现在,Kirito可以按照任意顺序和这些龙进行决斗,请问,Kirito能否离开这个游戏,即Kirito能够战胜所有的 n 头龙并且没有死亡。 

输入格式

题目包含 !多组 ! 输入

第一行输入两个数字sn(1 \leq s \leq 10^{4},1 \leq n \leq 10^{3}) ,表示Kirito的初始力量值和龙的数量。

接下来 n 行,每行输入两个数字 x_{i} 和 y_{i}(1 \leq x_{i} \leq 10^{4} , 0 \leq y_{i} \leq 10^{4})。表示第 i 条龙的力量以及Kirito击败这头龙能够获得的额外力量值。

输出格式

如果Kirito能够离开这个游戏,则输出”YES”, 否则,则输出”NO”.

样例

样例输入

2 2
1 99
100 0

样例输出

YES

分析

        这一题是一道非常简单的贪心题。

        我们将龙从小到大按顺序排列,这样可以打败尽可能多的龙,从而积累更多的战斗力。
最佳贪心策略就是比较x_{i} ,最小的最先做,从而积累y_{i}

#include<cstdio>
#include<algorithm>
#include<cstring>using namespace std;const int MAXN = 10005;struct node{int xi, yi;
}a[MAXN]; //结构体bool cmp(node x, node y){return x.xi < y.xi;
} //先找战斗力小的龙int main(){int s, n;while(scanf("%d %d",&s,&n) != EOF){ // 多组数据,无限输入for(int i=1; i<=n; i++){scanf("%d%d", &a[i].xi, &a[i].yi);}sort(a+1, a+1+n, cmp);bool flag = false;for(int i=1; i<=n; i++){if(s > a[i].xi){ // 赢了s += a[i].yi; // 加能量}else{ // 输了flag = true;break;}}if(flag == true)printf("NO\n");else{printf("YES\n");}}return 0;
}

麻烦点个赞!!~~~


http://www.ppmy.cn/news/287398.html

相关文章

2.2.2 处理器(CPU)资源

最后更新2021/07/08 处理器资源有两类&#xff1a;物理CPU和虚拟CPU&#xff0c;由于在虚拟化不同层面有不同的解释&#xff0c;因此请先确认其含义。后续如无特别说明&#xff0c;与x86系列对应&#xff0c;CPU即通常说的CPU core&#xff0c;CPU封装即socket&#xff0c;通常…

JavaSE笔记(二)重制版

面向过程篇 前面我们已经认识了Java语言的相关特性&#xff0c;并且已经成功配置好了开发环境&#xff0c;从这节课开始&#xff0c;我们就可以正式进入到Java语言的学习当中了。Java语言是一门面向对象的语言&#xff0c;但是在面向对象之前&#xff0c;我们还得先学会如何面…

速龙641电脑装机 硬件 参数 BIOS参数调整

2012.3.6.新装机配置 1.主板&#xff1a;映泰TA75M 549元 2.CPU: 速龙IIx4 641 479元 3.内存&#xff1a;芝奇DDR3 2133 8G(4G2条) 499元 4.电源&#xff1a;全汉蓝爆炫动版450额度400W 249元 5.显卡&#xff1a;蓝宝…

商用计算机cpu,面向商业用户!AMD速龙II B22商用CPU评测

前言:对于所有企业来说,电脑无疑已经成为不可缺少的工具,正因为对电脑有这样庞大的需求,商用市场也成为很多厂商的必争之地。对于CPU厂商也不例外,无论是Intel还是AMD,都有相应的商用平台,与Intel不同的是,AMD还专门针对商用市场推出了商用版的CPU。近日,我们拿到了一…

计算机组成原理——总线,输入输出系统

文章目录 **一 总线概述****1 总线基本概念****1.1 定义****1.2 总线设备****1.3 总线特性** **2 总线的分类****2.1 片内总线****2.2 系统总线****2.3 I/O总线****2.4 通信总线** **3 系统总线的结构****3.1 单总线结构****3.2 双总线结构****3.3 三总线结构** **4 常见的总线…

python Web开发 flask轻量级Web框架实战项目--学生管理系统

上次发的一篇文章&#xff0c;有很多朋友私信我要后面的部分&#xff0c;那咱们就今天来一起学习一下吧&#xff0c;因为我的数据库这门课选中的课题是学生管理系统&#xff0c;所以今天就以这个课题为例子&#xff0c;从0到1去实现一个管理系统。数据库设计部分我会专门出一个…

spark复习重点

什么是大数据 大数据是指数据量巨大、类型繁多、处理速度快的数据集合。它不仅包括传统的结构化数据&#xff0c;还包括非结构化数据、半结构化数据等多种形式的数据。大数据的处理需要使用特殊的技术和工具&#xff0c;如分布式存储、分布式计算、数据挖掘、机器学习等。 大…

Android 源码 AOSP版本– 下载[Ubuntu ]

Android 源码 AOSP版本– 下载[Ubuntu ] 前言配置下载源码前言 Android系统作为一个庞大的开源项目,除了一些谷歌自带服务之外,其他所有代码均以AOSP(Android Open Source Project)的形式开源。对于框架开发者来说,熟悉AOSP是必不可少的知识。即使是普通开发者,为了优化…