题目如下:
题目背景
某 E 非常喜欢玉桂狗。
题目描述
在商店里共有 n 只玉桂狗玩偶,每只玩偶有可爱度 k 和价格 p。k 越大的玉桂狗玩偶越可爱。
某 E 现在有 R 元钱,她想知道自己可以买到的最可爱的玉桂狗玩偶的可爱度为多少。
保证某 E 一定能买到至少一只玉桂狗。
输入格式
输入共 n+1 行。
输入的第一行为两个个整数 n,R。
接下来 n 行,每行两个个整数 k,p,用于描述一只玉桂狗
解析
题目大意
有 n 个商品,你有 R 元钱,每个商品有价值 k 和价格 p,求能买到的最大价值的物品。
解析
输入时,利用循环读入 k,p。然后判断是否买得起,即 R 是否大于 p。若大于,
则用 ans 和 k 作比较,当当前的 k 比 ans 还大的时候,ans 自动更新。
注意事项:
- 注意读入有 n 次,需调用
while(n--)
或for(int i=1;i<=n;i++)
进行读入。 - 注意 ans 的更新,当且仅当有比它大的 k。
所以代码如下
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a,b,c,d,maxn=0;
cin>>a>>b;
for(long long i=1;i<=a;i++)
{
cin>>c>>d;
if(d<=b)
{
maxn=max(maxn,c);
}
}
cout<<maxn;
return 0;
}