网易2016研发工程师编程题 奖学金(python)
作者:ChrisMinions 发布时间:2021-11-21 19:37:54
本文为大家分享了网易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
来源:https://blog.csdn.net/qq_34617032/article/details/78599080
猜你喜欢
- 1 前言正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好
- 前言为了便于精准排查问题,需要将当前的请求信息与当前执行的 SQL 信息设置对应关系记录下来,记录的 SQL 信息包括:执行 SQL 的当前
- --查看指定表的外键约束 select * from sysobjects where parent_obj in( select id f
- I. 前言在上一篇文章深入理解PyTorch中LSTM的输入和输出(从input输入到Linear输出)中,我详细地解释了如何利用PyTor
- <% '测试读取MySql数据库的内容strconnection="driver={mysql odbc 3.51 dri
- 前言一般js破解有两种方法,一种是用Python重写js逻辑,一种是利用第三方库来调用js内容获取结果。这两种方法各有利弊,第一种方法性能好
- 引子Tornado 是一个网络异步的的web开发框架, 并且可以利用多进程进行提高效率, 下面是创建一个多进程 tornado 程序的例子.
- 前言:图像处理是常用的技术,python 拥有丰富的第三方扩展库,Pillow 是 Python3 最常用的图像处理库,目前最高版本5.2.
- 前言:有些时候,为了设定手机铃声或者发抖音视频,我们会耗费大量时间在剪辑音乐高潮部分上。那么这个音乐高潮的提取能不能自动化呢?当然可以。先来
- Promise手写Promise作为面试必考题,Promise的手写也是面试官必问的问题,所以对于Promise我们一定要了解透彻框架(fu
- 本文实例讲述了决策树的python实现方法。分享给大家供大家参考。具体实现方法如下:决策树算法优缺点:优点:计算复杂度不高,输出结果易于理解
- python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,
- 这篇文章主要介绍了python文字转语音实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
- 切片操作首先支持下标索引,通过[ N:M :P ]操作索引正向从0开始,逆向从-1开始N:切片开始位置M:切片结束位置(不包含)P:指定切片
- 当我们学习python的时候,总会用到一些常用的模块,接下来我就详细讲解下利用两种不同的方式画饼状图。首先利用【Tkinter】中的canv
- 在网上查了一下,在网上收集了Java与JavaScript中使用的两个例子,试验过,分享下。1、Java:package org.bearf
- mysql 创建的优化就是加索引,可是有时候会遇到加索引都没法达到想要的效果的情况,加上了所以,却还是搜索的全数据,原因是sqlEXPLAI
- PHP getDocNamespaces() 函数实例返回 XML 文档的根节点中声明的命名空间:<?php $xml=<<
- 本文实例讲述了go语言map字典删除操作的方法。分享给大家供大家参考。具体分析如下:这里先构造了一点map,添加了青岛、济南、烟台三地的拼音
- 如下所示:#!/usr/bin/env python3.5import psutilimport mysql.connectorimport