原题传送门:http://codeforces.com/problemset/problem/230/A
Kirito is stuck on a level of the MMORPG he is playing now. To move on in the game, he's got to defeat all n dragons that live on this level. Kirito and the dragons have strength, which is represented by an integer. In the duel between two opponents the duel's outcome is determined by their strength. Initially, Kirito's strength equals s.
If Kirito starts duelling with the i-th (1 ≤ i ≤ n) dragon and Kirito's strength is not greater than the dragon's strength xi, then Kirito loses the duel and dies. But if Kirito's strength is greater than the dragon's strength, then he defeats the dragon and gets a bonus strength increase by yi.
Kirito can fight the dragons in any order. Determine whether he can move on to the next level of the game, that is, defeat all dragons without a single loss.
The first line contains two space-separated integers s and n (1 ≤ s ≤ 104, 1 ≤ n ≤ 103). Then n lines follow: the i-th line contains space-separated integers xi and yi (1 ≤ xi ≤ 104, 0 ≤ yi ≤ 104) — the i-th dragon's strength and the bonus for defeating it.
On a single line print "YES" (without the quotes), if Kirito can move on to the next level and print "NO" (without the quotes), if he can't.
2 2 1 99 100 0
YES
10 1 100 100
NO
In the first sample Kirito's strength initially equals 2. As the first dragon's strength is less than 2, Kirito can fight it and defeat it. After that he gets the bonus and his strength increases to 2 + 99 = 101. Now he can defeat the second dragon and move on to the next level.
In the second sample Kirito's strength is too small to defeat the only dragon and win.
分析:排序+贪心
把那些能被打掉的小怪兽排前面,如果这样都不能顺利通关的话,那肯定不能。
#include<cstdio> #include<algorithm> using namespace std; #define MAXN 1100 struct Dr{ int str; int bon; }; bool cmp(Dr a,Dr b){ return a.str<b.str; } int s,n,flag; Dr d[MAXN]; int main() { while(scanf("%d%d",&s,&n)==2) { flag = 1; for(int i=0;i<n;i++){ scanf("%d%d",&d[i].str,&d[i].bon); } sort(d,d+n,cmp); for(int i=0;i<n;i++){ if(s>d[i].str) { s+=d[i].bon; } else{ flag = 0; break; } } if(flag){ printf("YES\n"); }else{ printf("NO\n"); } } return 0; }
相关推荐
Codeforces题库101-200介绍了一个在编程竞赛领域非常知名的平台——Codeforces。Codeforces是一个专注于计算机编程的俄罗斯网站,由一组来自萨拉托夫国立大学的竞技体育团队成员领导,由Mikhail Mirzayanov领导。该...
标题 "Codeforces 题库 001-100" 暗示了这里讨论的是Codeforces网站上的前100个编程竞赛题目。Codeforces是一个专注于算法竞赛编程的俄罗斯网站,由来自萨拉托夫国立大学的一群体育爱好者组成,以Mikhail Mirzayanov...
Codeforces是一个广受欢迎的在线编程竞赛平台,尤其在ACM(国际大学生程序设计竞赛)社区中备受推崇。这个“codeforces编程网站预测分数插件.zip”文件似乎包含了一个专为Codeforces用户设计的插件,旨在帮助参赛者...
打codeforces的神器
Codeforces Enhancer 1.1.2是一款专为Google Chrome浏览器设计的插件,旨在提升用户在Codeforces编程竞赛平台上的体验。这个插件的主要目标是通过提供一系列实用功能,帮助程序员更有效地进行代码编写、测试和提交,...
根据提供的文档信息,我们可以推断出这是一份由许昊然撰写的Codeforces题目的解题报告。许昊然是国际信息学奥林匹克(IOI)2012年和2013年的金牌获得者,因此他的解题报告极具参考价值。下面我们将详细解读这份报告...
《Codeforces代码名称解析》 Codeforces是一个全球知名的在线编程竞赛平台,吸引了众多程序员和算法爱好者参与。这里的“codes_names_Codeforces_”标题暗示我们将探讨的是Codeforces平台上一些问题的代码名称。...
Codeforces 185A - Plant 全测试点49个 Codeforces 是一个在线编程平台,提供了大量的编程题目和比赛。其中,185A - Plant 是一个经典的题目,要求编写一个程序来解决植物生长的问题。 在这个题目中,输入是一个...
一个Codeforces、牛客竞赛、AtCoder平台的编程竞赛查询插件,ACMer必备.zip
Codeforces是一个知名的在线编程竞赛平台,它吸引了众多程序员和编程爱好者参与。这里的“codeforces比赛代码”很显然是指在Codeforces平台上参加比赛时编写的各种程序代码。这些代码可能包括解决算法问题、数据结构...
Codeforces全球第十轮比赛是编程竞赛平台Codeforces举办的一场线上编程比赛,旨在挑战参赛者的算法设计、逻辑思维和编程技巧。在这个比赛中,参赛者通常需要解决一系列算法问题,涵盖数据结构、图论、动态规划、数学...
Codeforces 是一个知名的在线编程竞赛平台,它定期举办编程竞赛,吸引全球的程序员参与,以提升编程技能和算法理解。本次提及的是Codeforces round 678的第二部分(division 2),通常这类比赛会包含四道题目,分别...
codeforces-ACM竞赛题目-2833道.tgz
Codeforces 19 E Fairy 是一道关于图论和二分图的编程竞赛题目。本题要求求解在给定的无向图中,通过删除一条边使得剩余的图成为一个二分图。首先,我们需要理解二分图的概念。二分图是指图中的节点可以分为两个互不...
PDF-CodeForces问题 PDF文件中的CodeForces问题 利用CodeForces提取在这个库中的文件 ,文件夹名代表来自CodeForces网址contests`的ID,每个文件夹包含比赛的问题。 有关CodeForces竞赛的疯狂事实 CodeForces上有937...
# sublime-plugin-for-codeforces 自定义构建,用于从 codeforces 获取测试用例并检查程序是否正确。 平台:GNU/Linux 语言:Python2.7.9 描述:这个程序从 codeforces 中获取测试用例,并告诉你程序的输出是否与...
codeforces-plugin-sublime-text 注意:仅适用于 C++ 代码。 它能做什么? 编译你的 C++ 代码,构建它,获取测试用例,在上面运行你的代码,比较输出。 它不做什么: 通过互联网神奇地识别您的问题并进行判断。 ...
Codeforces是一个专注于竞技编程的俄罗斯网站,由来自萨拉托夫国立大学的Mikhail Mirzayanov领导的一组体育运动员创建和维护。该网站为用户提供了以下主要服务:每周大约举办一次的短期(2小时)比赛,即...
lucifer1004大佬的博客cf上分攻略故里大佬的githubcf思维题刷题数:44- (1421)codeforces 676 div2 A,B done
Codeforces是一个全球知名的在线编程竞赛平台,吸引了众多程序员和编程爱好者参与。它的主要特点是定期举行比赛,用户可以在线提交代码,系统自动评测并给出结果。在这个过程中,掌握一些关键的编程技巧和策略对于...