网易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排序搜索基本算法之归并排序实例分析
Dec 08 Python
利用Python yagmail三行代码实现发送邮件
May 11 Python
python实现自动发送报警监控邮件
Jun 21 Python
python开发准备工作之配置虚拟环境(非常重要)
Feb 11 Python
python模拟菜刀反弹shell绕过限制【推荐】
Jun 25 Python
python 实现交换两个列表元素的位置示例
Jun 26 Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 Python
Docker部署Python爬虫项目的方法步骤
Jan 19 Python
Django实现将一个字典传到前端显示出来
Apr 03 Python
keras训练浅层卷积网络并保存和加载模型实例
Jul 02 Python
python 代码运行时间获取方式详解
Sep 18 Python
详解python爬取弹幕与数据分析
Nov 14 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
受疫情影响 动画《Re从零开始的异世界生活》第二季延期至7月
2020/03/10 日漫
PHP数据类型之布尔型的介绍
2013/04/28 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
实例讲解PHP表单
2020/06/10 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
捕获关闭窗口的脚本
2009/01/10 Javascript
用javascript添加控件自定义属性解析
2013/11/25 Javascript
jQuery动态显示和隐藏datagrid中的某一列的方法
2013/12/11 Javascript
javascript使用switch case实现动态改变超级链接文字及地址
2014/12/16 Javascript
IE及IE6浏览器中判断JS文件加载成功失败的方法
2015/02/18 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
jQuery中的deferred使用方法
2017/03/27 jQuery
vue中阻止click事件冒泡,防止触发另一个事件的方法
2018/02/08 Javascript
vue生成token并保存到本地存储中
2018/07/17 Javascript
Vue动态路由缓存不相互影响的解决办法
2019/02/19 Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
2020/06/19 Javascript
小程序实现上下切换位置
2020/11/16 Javascript
[02:26]2016国际邀请赛8月3日开战 中国军团出征西雅图
2016/08/02 DOTA
Python 3.x读写csv文件中数字的方法示例
2017/08/29 Python
Python 字符串与二进制串的相互转换示例
2018/07/23 Python
python调用c++返回带成员指针的类指针实例
2019/12/12 Python
Python+OpenCV图像处理——实现轮廓发现
2020/10/23 Python
解决pytorch下出现multi-target not supported at的一种可能原因
2021/02/06 Python
C和C++经典笔试题附答案解析
2014/08/18 面试题
师范毕业生自荐信
2013/10/17 职场文书
运动会通讯稿400字
2014/01/28 职场文书
体育教学随笔感言
2014/02/24 职场文书
学生个人自我鉴定
2014/03/26 职场文书
差生评语大全
2014/05/04 职场文书
代领报检证委托书范本
2014/10/11 职场文书
同学聚会祝酒词
2015/08/10 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
JavaScript架构localStorage特殊场景下二次封装操作
2022/06/21 Javascript