题目链接:

https://cn.vjudge.net/problem/POJ-1759

题目大意:

N个灯泡离地H_i,满足H1 = A ,Hi = (Hi-1 + Hi+1)/2 – 1,HN = B ,求最大B

解题思路:

如果二分B,会变成无从下手,发现如果求出H2,那么就可以之后的所有高度都固定了。

所以二分H2,如果循环下去求到某一个Hi小于0,说明这个H2较小,应该变大。

求出满足条件的最小的H2,这样就可以求出最低的B

因为H2大的话,B肯定会大

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<vector>
#include<queue>
#define MID(l, r) (l + (r - l) / 2)
#define lson(o) (o * 2)
#define rson(o) (o * 2 + 1)
using namespace std;
typedef long long ll;
const int INF = 1e9 +;
const int maxn = 1e6 + ;
const double eps = 1e-;
int main()
{
int n;
double a;
cin >> n >> a;
double l = , r = 1e10;
double h1, h2, h3, ans;
for(int i = ; i < ; i++)
{
double mid = (l + r) / ;
h1 = a, h2 = mid;
bool ok = ;
for(int j = ; j <= n - ; j++)//只需要循环n-2次即可,因为第一次循环求出H3,第n-2次循环求出Hn
{
h3 = * h2 + - h1;
h1 = h2;
h2 = h3;
if(h3 < )
{
ok = ;
break;
}
}
if(ok)ans = h3, r = mid;
else l = mid;
}
printf("%.2f\n", ans);
return ;
}

POJ-1759 Garland---二分+数学的更多相关文章

  1. POJ 1759 Garland(二分+数学递归+坑精度)

    POJ 1759 Garland  这个题wa了27次,忘了用一个数来储存f[n-1],每次由于二分都会改变f[n-1]的值,得到的有的值不精确,直接输出f[n-1]肯定有问题. 这个题用c++交可以 ...

  2. POJ 1759 Garland(二分答案)

    [题目链接] http://poj.org/problem?id=1759 [题目大意] 有n个数字H,H[i]=(H[i-1]+H[i+1])/2-1,已知H[1],求最大H[n], 使得所有的H均 ...

  3. poj 1759 Garland

    Garland Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 2365   Accepted: 1007 Descripti ...

  4. poj 1759 Garland (二分搜索之其他)

    Description The New Year garland consists of N lamps attached to a common wire that hangs down on th ...

  5. POJ1759 Garland —— 二分

    题目链接:http://poj.org/problem?id=1759 Garland Time Limit: 1000MS   Memory Limit: 10000K Total Submissi ...

  6. poj 2318 叉积+二分

    TOYS Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 13262   Accepted: 6412 Description ...

  7. poj 2049(二分+spfa判负环)

    poj 2049(二分+spfa判负环) 给你一堆字符串,若字符串x的后两个字符和y的前两个字符相连,那么x可向y连边.问字符串环的平均最小值是多少.1 ≤ n ≤ 100000,有多组数据. 首先根 ...

  8. poj 1759(二分)

    传送门:Problem 1759 https://www.cnblogs.com/violet-acmer/p/9793209.html 题意: 有N个彩灯关在同一条绳上,给出第一个彩灯的高度A,并给 ...

  9. Divide and conquer:Garland(POJ 1759)

     挂彩灯 题目大意:就是要布场的时候需要挂彩灯,彩灯挂的高度满足: H1 = A Hi = (Hi-1 + Hi+1)/2 - 1, for all 1 < i < N HN = B Hi ...

  10. poj 1905 Expanding Rods (数学 计算方法 二分)

    题目链接 题意:将长度为L的棒子卡在墙壁之间.现在因为某种原因,木棒变长了,因为还在墙壁之间,所以弯成了一个弧度,现在求的是弧的最高处与木棒原先的地方的最大距离. 分析: 下面的分析是网上别人的分析: ...

随机推荐

  1. java.lang.ref.Reference<T>

    //看之前先要知道java里面的四种引用.package com.zby.ref; import sun.misc.Cleaner; /** * 引用对象的抽象基础类.这个类定义了所有引用对象的公共操 ...

  2. Oracle 更改归档文件到ASM磁盘

    01,配置磁盘路径

  3. D3(v5) in TypeScript 坐标轴之 scaleBand用法

    在学习d3时候,发现在TS中实现D3的坐标轴中遇到一些错误,而这些错误却不会存在于js(因为ts的类型检查)写法中,因此做下笔记: import * as d3 from 'd3';import * ...

  4. [转]win7 如何升级PowerShell

    本文转自:http://www.cnblogs.com/wenBlog/p/6198354.html 背景: 开发的PowerShell 脚本需要使用Invoke-RestMethod命令,发现在老的 ...

  5. 1、Angular2 Component 组件

    angular2借鉴了.http://www.cnblogs.com/lewis617/p/5191007.html 导入了自己的思维方式 1.基本属性 2.*语法与template标签 3.组件的嵌 ...

  6. CheckBoxList

    CheckBoxList 控件基本用法 定义和用法 CheckBoxList 控件用来建立一个多选的复选框组. CheckBoxList 控件中的每个可选项由一个 ListItem 元素来定义! 提示 ...

  7. DIV滚动样式

    .divScroll{     OVERFLOW:auto;        scrollbar-face-color: #FFFFFF;        scrollbar-shadow-color: ...

  8. IE9下JQuery发送ajax请求失效

    最近在做项目的时候,测试PC端网页,在IE9下会失效,不能正常的发送POST请求,经过仔细的排查,发现是IE9下JQuery发送ajax存在跨域问题. 目前有两种解决方案:   解决方案一: 设置浏览 ...

  9. java selector

    java selector使用select轮询注册到selector中的channel,如果有channel准备好注册的事件,select()返回,返回值为可以操作的channel的个数.通过sele ...

  10. Visual Paradigm for UML 10.0 SP1 企业中文下载地址、安装及激活详解教程

    https://blog.csdn.net/u013354805/article/details/46531833