xdu 1203 - put on make up 二分答案

简介:

  写了这么多题,总想不起来二分答案这种神方法。附带下sort的默认比较函数

sort 中的比较函 数

equal_to 相等
not_equal_to 不相等
less 小于
greater 大于
less_equal 小于等于
greater_equal 大于等于

#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
double a[10005],b[10005],t[10005];
int n,k;
bool ok(double mid)
{
    int i;
    double ans=0;
    for(i=0;i<n;i++)
        t[i]=a[i]-mid*b[i];
    sort(t,t+n,greater<double>());
    for(i=0;i<k;i++) ans+=t[i];
    return ans>0;
}
int main()
{
    while(~scanf("%d%d",&n,&k))
    {
        int i;
        double t;
        for(i=0;i<n;i++)
            scanf("%lf",&t),a[i]=log(t);
        for(i=0;i<n;i++)
            scanf("%lf",&t),b[i]=log(t);
        double l=1.0,r=3.0,mid;
        while(r-l>1e-8)
        {
            mid=(l+r)/2.0;
            if(ok(mid))l=mid;
            else r=mid;
        }
        printf("%.3f\n",l);
    }
}


目录
相关文章
|
移动开发 前端开发 JavaScript
前端和后端限制文件大小的具体实现方式
【5月更文挑战第3天】前端限制文件大小可使用HTML5的&quot;accept&quot;和&quot;maxSize&quot;属性或JavaScript的File API,后端则可通过判断文件字节大小、使用第三方库如Apache Commons FileUpload,或者在服务器框架如Flask、Spring中设置限制。Nginx也可作为反向代理设定上传限制,但可能影响用户体验。
931 4
|
运维 负载均衡 监控
从 2018 年 Nacos 开源说起
抛开担忧,迎接确性
17144 87
从 2018 年 Nacos 开源说起
|
JSON Kubernetes 算法
【云原生Kubernetes】二进制搭建Kubernetes集群(上)——部署etcd集群和单master(1)
本文将带大家一起通过二进制搭建Kubernetes v1.20,因为实验内容较多,故分成上、中、下三篇文章进行展示。
463 1
阿里云注册域名创建信息模板流程及审核时间说明
阿里云注册域名所有者没有信息模板,新创建的信息模板已经提交,审核需要多长时间?着急
506 0
阿里云注册域名创建信息模板流程及审核时间说明
|
人工智能
CorelDRAW2022永久免费版本矢量插图更新下载
CorelDRAW是用于创建高质量矢量插图、徽标设计和页面布局更直观的多功能图形应用程序。历经22个版本的变革、更新、改进和增强,CorelDRAW Graphic Suite 2022 的功能也变得更加全面且强大。
1179 0
|
存储 C++
C++实现树 - 04 二叉树的构建(数组)
通过前面两讲的学习,大家可能对二叉树有了比较深的感悟,但可能会发现一个小问题,我们在构建二叉树的时候都是一个个插入的,非常的不方便。那么这节课我们就来看看,如何通过输入一个数组来快速构建起一个二叉树。这里会介绍通过顺序数组、前序数组和后序数组如何构建二叉树。
896 0
C++实现树 - 04 二叉树的构建(数组)
|
iOS开发 MacOS
MacOS 10.15: 修正typora无法输入问题
最近把系统更新到了10.15,发现 typora 没法输入了, 一开始以为是 typora 的 bug,慢慢坐等更新, 放了一个月,更新了 typora 推送的版本也无效。 这就没法接受了!!必须排查下~~
596 0
|
设计模式 存储 安全
一文带你彻底搞懂发布与订阅设计
我们常说的发布订阅设计模式,也叫观察者模式,也就是事件监听机制,观察者模式订阅了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,当这个主题对象发生改变时,会通知所有的观察者对象,使他们能够自动的更新自己!
1170 0
一文带你彻底搞懂发布与订阅设计
|
数据采集 消息中间件 新零售
【行业应用】阿里云实时计算 Flink 版物流行业解决方案
物流行业,特别是跨境进出口是非常复杂的业务,链路长、环节多、业务场景复杂。在物流履行时效不断加快的当下,物流服务一步步向次日达甚至当日达迈进,离线日报的日更频率早已无法满足业务需求。
【行业应用】阿里云实时计算 Flink 版物流行业解决方案