网易2016研发工程师编程题 奖学金(python)


Posted in Python onJune 19, 2019

本文为大家分享了网易2016研发工程师编程题,供大家参考,具体内容如下

'''
[编程题] 奖学金
时间限制:1秒
空间限制:32768K
小v今年有n门课,每门都有考试,为了拿到奖学金,小v必须让自己的平均成绩至少为avg。
每门课由平时成绩和考试成绩组成,满分为r。现在他知道每门课的平时成绩为ai ,
若想让这门课的考试成绩多拿一分的话,小v要花bi 的时间复习,不复习的话当然就是0分。
同时我们显然可以发现复习得再多也不会拿到超过满分的分数。为了拿到奖学金,小v至少要花多少时间复习。

输入描述:

第一行三个整数n,r,avg(n大于等于1小于等于1e5,r大于等于1小于等于1e9,avg大于等于1小于等于1e6),
接下来n行,每行两个整数ai和bi,均小于等于1e6大于等于1

输出描述:

一行输出答案。

输入例子1:

5 10 9
0 5
9 1
8 1
0 1
9 100

输出例子1:

43

'''

'''
解题思路:排序
  先把平均成绩ai和复习时间bi放入ab_i中,然后把ab_i按照bi从小到大的顺序排序
  然后1、求出所需要的总分(n*avg)  2、求出平均成绩的总和;如果平均成绩的总和已经大于了所需总分,则输出0,否则:
  按顺序访问ab_i,如果ab_i中当前科目的平均分已经到达满分,则访问下一个科目,否则的话给当前科目平均分加1,当前的总分加1,消耗时间加上该科目获取1分的复习时间。
  直至当前的总分等于目标总分后输出所耗费的时间。
'''

'''
代码运行结果:
答案正确:恭喜!您提交的程序通过了所有的测试用例
'''

while True:
 try:
  n, r, avg = [int(each) for each in input().split()]
  ab_i = []
  for i in range(n):
   ab_i.append([int(each) for each in input().split()])
 
  ab_i = sorted(ab_i, key=lambda x: x[1])
 
  target = n * avg
  current = sum([each[0] for each in ab_i])
  time_total = 0
  if current < target:
   index = 0
   while current < target:
    while ab_i[index][0] >= r:
     index += 1
    time_total += ab_i[index][1]
    ab_i[index][0] += 1
    current += 1
   print(time_total)
  else:
   print(0)
 except:
  break

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之开始真正编程
Sep 12 Python
使用Python编写一个最基础的代码解释器的要点解析
Jul 12 Python
python实现xlsx文件分析详解
Jan 02 Python
用tensorflow实现弹性网络回归算法
Jan 09 Python
python针对excel的操作技巧
Mar 13 Python
分分钟入门python语言
Mar 20 Python
python实现监控阿里云账户余额功能
Dec 16 Python
解决Tensorflow sess.run导致的内存溢出问题
Feb 05 Python
Python sublime安装及配置过程详解
Jun 29 Python
Python3如何使用range函数替代xrange函数
Oct 05 Python
Python基于内置函数type创建新类型
Oct 22 Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
Dec 08 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
Jun 19 #Python
python调用动态链接库的基本过程详解
Jun 19 #Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
Jun 19 #Python
华为校园招聘上机笔试题 扑克牌大小(python)
Apr 22 #Python
PyQt5实现从主窗口打开子窗口的方法
Jun 19 #Python
python操作kafka实践的示例代码
Jun 19 #Python
利用pyuic5将ui文件转换为py文件的方法
Jun 19 #Python
You might like
重置版游戏视频
2020/04/09 魔兽争霸
PHP iconv 解决utf-8和gb2312编码转换问题
2010/04/12 PHP
PHP获取当前页面完整URL的实现代码
2013/06/10 PHP
php中file_exists函数使用详解
2015/05/08 PHP
记录Yii2框架开发微信公众号遇到的问题及解决方法
2018/07/20 PHP
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
用JQuery在网页中实现分隔条功能的代码
2012/08/09 Javascript
javascript小数四舍五入多种方法实现
2012/12/23 Javascript
判断一个变量是数组Array类型的方法
2013/09/16 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
微信小程序学习(4)-系统配置app.json详解
2017/01/12 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
vue eslint简要配置教程详解
2019/07/26 Javascript
vue页面引入three.js实现3d动画场景操作
2020/08/10 Javascript
js实现弹幕飞机效果
2020/08/27 Javascript
JavaScript实现移动小精灵的案例代码
2020/12/12 Javascript
[04:26]2014DOTA2国际邀请赛-Newbee顺利进入胜者组决赛 独家专访战神7
2014/07/19 DOTA
python实现带声音的摩斯码翻译实现方法
2015/05/20 Python
Python实现MySQL操作的方法小结【安装,连接,增删改查等】
2017/07/12 Python
python编程培训 python培训靠谱吗
2018/01/17 Python
python绘制圆柱体的方法
2018/07/02 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
Pyqt5 基本界面组件之inputDialog的使用
2019/06/25 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
详解如何修改python中字典的键和值
2020/09/29 Python
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
美国复古街头服饰精品店:Need Supply Co.
2017/02/22 全球购物
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
小学生班会演讲稿
2014/01/09 职场文书
学年自我鉴定
2014/01/16 职场文书
迎新晚会邀请函
2014/02/01 职场文书
毕业生学校推荐信范文
2014/05/21 职场文书
商业计划书如何写?关键问题有哪些?
2019/07/11 职场文书
sass 常用备忘案例详解
2021/09/15 HTML / CSS