C++贪心——陶陶摘苹果(升级版)
题目描述
又是一年秋季时,陶陶家的苹果树结了 n 个果子。陶陶又跑去摘苹果,这次他有一个 a 公分的椅子。当他手够不着时,他会站到椅子上再试试。
这次与 NOIp2005 普及组第一题不同的是:陶陶之前搬凳子,力气只剩下 s了。当然,每次摘苹果时都要用一定的力气。陶陶想知道在 s<0 之前最多能摘到多少个苹果。
现在已知 n 个苹果到达地上的高度 xi,椅子的高度 a,陶陶手伸直的最大长度 b,陶陶所剩的力气 s,陶陶摘一个苹果需要的力气 yi,求陶陶最多能摘到多少个苹果。
输入格式
第 1行:两个数 苹果数 n,力气 s。
第 2 行:两个数 椅子的高度 a,陶陶手伸直的最大长度 b。
第 3行~第 3+n−1 行:每行两个数 苹果高度 xi,摘这个苹果需要的力气 yi。
输出格式
只有一个整数,表示陶陶最多能摘到的苹果数。
分析:
先摘需要力气小的苹果,创建一个结构体,对力气升序排序,再判断高度。
代码:
#include<bits/stdc++.h>
using namespace std;
struct pingguo
{int x;int y;
}app[5001];
bool paixu(pingguo a, pingguo b) {if (a.y < b.y) return true;if (a.y == b.y) {if (a.x < b.x) {return true;}}return false;
}
int main() {int n, s, a, b,sum=0;int i;cin >> n >> s;cin >> a >> b;for ( i = 1; i <= n; i++) {cin >> app[i].x >> app[i].y;}sort(app + 1, app + 1 + n, paixu);i = 1;while (s > 0) {if (app[i].x <= (a + b)) {sum++;s = s - app[i].y;if (s < 0)sum--;}i++;}cout << sum;return 0;
}
C++贪心——陶陶摘苹果(升级版)相关推荐
- 洛谷找最小值c语言,洛谷 P1478 陶陶摘苹果(升级版) C语言实现
原题地址:P1478 淘淘摘苹果(升级版)- 洛谷 题目描述 又是一年秋季时,陶陶家的苹果树结了n个果子.陶陶又跑去摘苹果,这次她有一个a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与NO ...
- 贪心——陶陶摘苹果(升级版)
贪心--陶陶摘苹果(升级版) 题目描述 又是一年秋季时,陶陶家的苹果树结了 n 个果子.陶陶又跑去摘苹果,这次他有一个 a 公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与 NOIp2005 ...
- 洛谷BOSS战-P1478陶陶摘苹果(升级版)贪心算法
题目描述 又是一年秋季时,陶陶家的苹果树结了 n 个果子.陶陶又跑去摘苹果,这次他有一个 a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与 NOIp2005 普及组第一题不同的是:陶陶之前 ...
- P1478 陶陶摘苹果(升级版)(C++_贪心)
题目描述 又是一年秋季时,陶陶家的苹果树结了 n 个果子.陶陶又跑去摘苹果,这次他有一个 a 公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与 NOIp2005 普及组第一题不同的是:陶陶之 ...
- 洛谷-P1478-陶陶摘苹果(升级版)
陶陶摘苹果(升级版) - 洛谷 解题思路: 1.由题意得,和我们之前做过的摘苹果多了一个力气, 分析,肯定是先挑所费力气较小的苹果取摘(贪心) 并且可以够的到这个苹果的话 2. 所以创建一个结构体数组 ...
- 贪心算法——洛谷(P1478)陶陶摘苹果
我们看一下,在这个题里,所有苹果费力气也就是占背包空间不同,但是价值都是1.背包问题主要是为了解决拿得多却不一定价值最大,拿价值大的却可能装不下其他有价值的东西而使人陷入两难才被发明的算法.对于价值相 ...
- 陶陶摘苹果(升级版)
陶陶摘苹果(升级版) 题目描述 又是一年秋季时,陶陶家的苹果树结了 nnn 个果子.陶陶又跑去摘苹果,这次他有一个 aaa 公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与 NOIp2005 ...
- 洛谷P1478 陶陶摘苹果(升级版)视频题解
洛谷P1478 陶陶摘苹果(升级版)视频题解 洛谷P1478 陶陶摘苹果(升级版)视频题解 题目描述 又是一年秋季时,陶陶家的苹果树结了 nn 个果子.陶陶又跑去摘苹果,这次他有一个 aa 公分的椅子 ...
- P1478 陶陶摘苹果(升级版)java 洛谷
P1478 陶陶摘苹果(升级版)java 洛谷 一.题目描述: 题目描述 又是一年秋季时,陶陶家的苹果树结了 nn 个果子.陶陶又跑去摘苹果,这次他有一个 aa 公分的椅子.当他手够不着时,他会站到椅 ...
最新文章
- 三层代码讲解--第一课
- 移动应用开发必备工具盘点
- js 字符串删除首尾_JavaScript trim 实现去除字符串首尾指定字符的简单方法
- python学习-综合练习七(二分查找(递归)、线性查找、插入排序、快速排序、选择排序、冒泡排序、归并排序、堆排序)-实例
- mysql表类型_MySQL表类型的选择
- java项目中Classpath路径到底指的是哪里?
- java字符串删掉子串_如何从Java中的列表中删除子列表?
- python recv_[Python]关于socket.recv()的非阻塞用法
- QBackingStore::flush() called with non-exposed window, behavior is undefined
- 教你:找回已失效的B站视频+批量下载B站收藏夹视频
- matlab如何泰勒公式用求近似值_泰勒公式在生活中的应用.doc
- 资本资产定价模型(CAPM)笔记整理
- 使用回溯法求解N皇后问题
- python高级特性的学习
- 详解Python中get函数的用法(附代码)
- 听音室-HIFI入门之400多张发烧碟中选出的精品
- 基本数据类型和内置方法 08
- 什么是关联以及为什么要关联
- CTF-实验吧-FALSE
- Flutter 里的语法糖解析,知其所然方能潇洒舞剑 | 开发者说·DTalk
热门文章
- 现货黄金指标精讲(布林通道)
- 机器学习的最小可用产品:人工智能应用的敏捷开发
- KeepAlived,keepalive,keep-alive--简析
- CustomToast避免一直弹弹弹
- 输入一个整数矩阵,计算位于矩阵边缘的元素之和。所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
- FileDescriptor详解
- 尝试opencv裂缝检测
- 程序设计题目之高校联考
- c语言程序设计答案万年历备忘录,C语言程序设计节日查询和任务提醒系统-万年历.doc...
- 百度作业帮 生成随机红包算法