原题链接:算法集训队第二场考核赛_E.Bob的股票
E.Bob的股票
题目背景
股票(stock)是股份公司所有权的一部分,也是发行的所有权凭证,是股份公司为筹集资金而发行给各个股东作为持股凭证并借以取得股息和红利的一种有价证券。股票是资本市场的长期信用工具,可以转让,买卖,股东凭借它可以分享公司的利润,但也要承担公司运作错误所带来的风险。每股股票都代表股东对企业拥有一个基本单位的所有权。每家上市公司都会发行股票。
——百度百科题目描述
Bob最近在研究股票,Bob利用专业知识搜罗了一系列的股票数据,这些数据每一条都是由 股票名称 股票单股价格 组成。
心急想吃热豆腐的Bob认为他已经准备充分了,准备购买股票了,但Bob有个奇怪的买法:Bob只买一种股票。
现在知道,股票数据一共有 N N N 条,Bob有 M M M 元,Bob想知道他最多能买到多少股票?输入描述
第 1 1 1 行内输入两个数 N N N 和 M M M ——分别代表有 N N N 条股票数据 和 Bob有 M M M 元
第 2 2 2 行至第 N + 1 N+1 N+1 行,每行内输入一个仅包含小写字母的字符串和一个实数——分别代表 股票名称 和 股票单股价格输出描述
一行内输出一个整数——Bob能买到的最多的股票数量
输入输出样例
输入 #1:
5 123.45 a 15 b 20 c 25 d 30 e 35
输出 #1:
8
说明/提示:
【数据范围】
1 ≤ N ≤ 1 e 7 1≤N≤1e7 1≤N≤1e7
M M M 在 d o u b l e double double 范围内
解决办法:
本题坑点十足,没有人过是正常的,细心的同学可以注意到数据范围并没有给全。
此题正解应使用高精度除法,且应向下取整,其次应考虑Bob一股都买不起的情况。
参考代码:
参考代码将在算法集训队接触高精度算法后及时在本篇文章更新。