2018牛客暑假多校A题GPA 01分数规划
链接:https://www.nowcoder.com/acm/contest/143/A
来源:牛客网
gpa
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
Special Judge, 64bit IO Format: %lld
题目描述
Kanade selected n courses in the university. The academic credit of the i-th course is s[i] and the score of the i-th course is c[i].
At the university where she attended, the final score of her is
Now she can delete at most k courses and she want to know what the highest final score that can get.
输入描述:
The first line has two positive integers n,kThe second line has n positive integers s[i]The third line has n positive integers c[i]
输出描述:
Output the highest final score, your answer is correct if and only if the absolute error with the standard answer is no more than 10-5
示例1
输入
复制
3 1 1 2 3 3 2 1
输出
复制
2.33333333333
说明
Delete the third course and the final score is
备注:
1≤ n≤ 1050≤ k < n1≤ s[i],c[i] ≤ 103
题目:考虑01分数规划
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=100005;
const double eps=1.0e-6;
int n,k;
double a[maxn],b[maxn],s[maxn];
double d[maxn];
bool judge(double x)
{for(int i=1;i<=n;i++){d[i]=a[i]-x*s[i];}sort(d+1,d+n+1);double sum=0;for(int i=k+1;i<=n;i++){sum+=d[i];}return sum>=0.0;
}
int main()
{int i;scanf("%d%d",&n,&k);for(i=1;i<=n;i++)scanf("%lf",&s[i]);for(i=1;i<=n;i++)scanf("%lf",&b[i]);for(i=1;i<=n;i++)a[i]=s[i]*b[i];double l=0;double r=0x3f3f3f3f;while((r-l)>eps){double mid=(l+r)/2;if(judge(mid)) l=mid;else r=mid;}printf("%.11f\n",l);
}
2018牛客暑假多校A题GPA 01分数规划相关推荐
- 2018牛客暑假多校三 E(KMP运用)
题目描述: 给你一个字符串S,你要对字符串S的每一位i将前i位的字符串移动到尾部形成一个新的字符串,如果形成的字符串相同则归为一类Li.现在让你将Li类按照字典序排序,并让你输出每一类的数量和每一类中 ...
- 2018牛客暑假多校二 D(贪心)
题目描述: 你要按照顺序以此经过n个商店,每到达一个商店你可以购买一件物品,也可以出售你手中的商品. 同一时刻你手上最多拿一件商品.在第i个商店购买和出售的代价都是a[i]. 问你经过完n个商店后的最 ...
- 2021牛客暑假多校第二场 K题—Stack (链表)
2021牛客暑假多校第二场 K题-Stack 题意: 一个单调栈,给你第n次操作时里面数据的数量,让你给出里面塞入的会是哪些数字. 主要思想:链表模拟 (代码里面有注释) (题解一开始说的是拓扑,后来 ...
- 2021牛客暑假多校第八场 K题—Yet Another Problem About Pi
2021牛客暑假多校第八场 K题-Yet Another Problem About Pi 题意:告诉你一个单元格的长和宽,问你走Π(3.1415926-)的长度距离最多可以走几个单元格 思路:沿着单 ...
- 2019牛客暑假多校7E:Find the median【线段树上二分】
题目: 2019牛客暑期多校训练营第七场E:Find the median 题意: 给出N个操作,每次操作向数组中插入[L,R]的数字,每次操作后询问数组中的中位数 分析: 如果L,R都比较小,就可以 ...
- 2019牛客暑假多校训练 第四场 triples I 按位或运算
链接:https://ac.nowcoder.com/acm/contest/884/D 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 2020牛客暑假多校第二场补题
比赛链接:link 题目 A kmp + Hash B 几何 C dfs D 签到题 F 单调区间 + gcd筛 G bitset神奇用法 H 权值线段树(动态开点/离散化) J 群论 A k ...
- 2019牛客暑假多校训练赛第七场C Governing sand(暴力)
题目链接:https://ac.nowcoder.com/acm/contest/887/C 题意:给出n种树和n个h[i],c[i],p[i]代表每种树的高度,砍掉一棵的花费,树的个数.现在要求砍掉 ...
- 牛客暑假多校第二场 K carpet
题意:给你一个n*m的矩阵 ,每个位置都有一个字符并且都有一个值,现在需要找到一个p*q的子矩阵, 原来的矩阵可以由现在这个矩阵无限复制然后截取其中的一部分得到,并且要求 子矩阵里最大的值 * (p+ ...
最新文章
- 第4关:16位快速加法器设计
- 从地心到宇宙,再到治疗癌症与“赋灵”智能,这届腾讯WE都聊了些啥?
- HDLBits 系列(30)Serial Receiver
- mega_[MEGA DEAL]带有Kotlin捆绑包的完整Android Oreo(95%折扣)
- 关于Excel导入的问题记录
- 076_浏览器对象模型
- LeetCode 1394. 找出数组中的幸运数(map计数)
- java singleton inner class_Java面向对象设计模式-单例模式
- linux可以用什么c语言编译器,嵌入式Linux下最常用的C语言编译器GCC命令详解
- 【新手案例】Python3.7如何获取网络时间
- Springboot实现邮箱验证码注册、找回密码和登录功能
- 捋一捋Kafka中的消费者API
- java语言程序设计第六章答案_Java语言程序设计(一)课后习题第六章(附答案)
- 安卓root本质操作
- 实现图片转换成字符画
- pe怎么安装kali linux,U盘+kali+pe三合一教程!装机,存储,渗透,persistence存储问题解决!...
- 摄像头之自动曝光,自动增益,图像深度 概念
- opera 无法访问网络
- PostgreSQL学习篇16.3 检查备库及流复制情况
- 中小初创企业网站,该怎么做SEO优化
热门文章
- 天道酬勤系列之AC620简介
- 趣店季报图解:营收3.8亿同比降47% 股价重回1美元以上
- System memory 249364480 must be at least 471859200
- MIZ7035上的AXI接口的MIG测试
- 实现Torchlight(火炬之光)的背包UI效果
- Mybatis报错01:Mapper method ‘com.feng.dao.UserMapper.deleteUser‘ has an unsupported return type: class
- envi处理海思一号数据全过程详解
- EditPlus下载安装及使用
- 我为什么选择Go语言(Golang)
- IC学习笔记——DRV8804