【LA3485】 Bridge
前言
哈哈哈,垃圾微积分哈哈哈
前置知识:自适应Simpson法与微积分初步,学会编程
Solution
考虑一下我们有的是什么:
一段桥梁的横向距离,悬线的长度,以及高度。
我们发现如果我们重新设一个元\(h=H-x\),那么很显然就有\(x=H-h\)
这个时候感觉\(h\)好求一些
那么怎么做?
可以根据\(h\)和\(d\)算出悬线长度,然后直接二分答案就好了。(注意按照格式输出)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<queue>
#include<iostream>
using namespace std;
#define ll long long
#define re register
#define file(a) freopen(a".in","r",stdin);freopen(a".out","w",stdout)
inline int gi(){
int f=1,sum=0;char ch=getchar();
while(ch>'9' || ch<'0'){if(ch=='-')f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){sum=(sum<<3)+(sum<<1)+ch-'0';ch=getchar();}
return f*sum;
}
double a;
double F(double x){
return sqrt(1+4*a*a*x*x);
}
double Simpson(double a,double b){
double c=a+(b-a)/2;
return (F(a)+4*F(c)+F(b))*(b-a)/6;
}
double simpson(double a,double b,double eps,double A){
double c=a+(b-a)/2;
double L=Simpson(a,c),R=Simpson(c,b);
if(fabs(L+R-A)<=eps*15)return L+R+(L+R-A)/15;
return simpson(a,c,eps/2,L)+simpson(c,b,eps/2,R);
}
double Ask(double a,double b,double eps){
return simpson(a,b,eps,Simpson(a,b));
}
double check(double d,double h){
a=4.0*h/(d*d);
return Ask(0,d/2,1e-5)*2;
}
const double eps=1e-5;
int main(){
int T=gi();
for(int Case=1;Case<=T;Case++){
printf("Case %d:\n",Case);
int D,H,B,L;
scanf("%d%d%d%d",&D,&H,&B,&L);
int n=(D+B-1)/D;
double d=(double)B/n;
double l=(double)L/n;
double x=0,y=H;
while(y-x>eps){
double mid=x+(y-x)*0.5;
if(check(d,mid)<l)x=mid;
else y=mid;
}
printf("%.2lf\n",H-x);
if(Case!=T)puts("");
}
return 0;
}
【LA3485】 Bridge的更多相关文章
- 【设计模式】Bridge模式(桥接模式)
最近的一次面试中,被问到桥接模式,以前呢并没有很仔细的研究过这个设计模式,借此机会剖析一下. 先给出自己对这个模式理解后的源码: interface A{ void methodA(); } inte ...
- 【BZOJ-2095】Bridge 最大流 + 混合图欧拉回路 + 二分
2095: [Poi2010]Bridges Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 604 Solved: 218[Submit][Stat ...
- 【设计模式】Bridge
前言 Bridge设计模式,将一个复杂类分成可以单独开发的部分.分成的两个部分,abstraction,implementation.字面上是抽象和实现,但不同于抽象方法及其实现.下面摘录Wiki的两 ...
- 【poj3608】 Bridge Across Islands
http://poj.org/problem?id=3608 (题目链接) 题意 求两凸包间最短距离 Solution 难写难调,旋转卡壳,还真是卡死我了. 先分别选出两凸包最上点和最下点,从这两点开 ...
- 【BZOJ2095】 Bridge
Time Limit: 1000 ms Memory Limit: 128 MB Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个 ...
- 【BZOJ2095】【POI2010】Bridge 网络流
题目大意 给你一个无向图,每条边的两个方向的边权可能不同.要求找出一条欧拉回路使得路径上的边权的最大值最小.无解输出"NIE". \(2\leq n\leq 1000,1\le ...
- 【HDOJ6218】Bridge(线段树,set,网格图,连通性)
题意:给定一张2×n的网格图,一开始矩阵所有相邻点之间有一条边 有q个询问,每次给出两个相邻的点的坐标,将其中的边删除或者添加,问如此操作之后整张图的割边数量 n,q<=2*10^5, ...
- 【ZOJ】4012 Your Bridge is under Attack
[ZOJ]4012 Your Bridge is under Attack 平面上随机n个点,然后给出m条直线,问直线上有几个点 \(n,m \leq 10^{5}\) 由于共线的点不会太多,于是我们 ...
- 【AtCoder ABC 075 C】Bridge
[链接] 我是链接,点我呀:) [题意] 让你求出桥的个数 [题解] 删掉这条边,然后看看1能不能到达其他所有的点就可以了 [代码] #include <bits/stdc++.h> us ...
随机推荐
- Windows-universal-samples学习笔记系列五:Custom user interactions
Custom user interactions Basic input Complex inking Inking Low latency input Simple inking Touch key ...
- 2019.01.22 zoj3583 Simple Path(并查集+枚举)
传送门 题意简述:给出一张图问不在从sss到ttt所有简单路径上的点数. 思路: 枚举删去每个点然后把整张图用并查集处理一下,同时不跟sss和ttt在同一个连通块的点就是满足要求的点(被删去的不算). ...
- (2)The secrets of learning a new language
https://www.ted.com/talks/lydia_machova_the_secrets_of_learning_a_new_language/transcript 00:13I lov ...
- oracle数据库的迁移(从一台服务器到另一个台服务器,从oracle 10g到oracle 11g)
这个过程呢,还是蛮艰难的.... 一.最初我使用的是Navicat中的数据传输来迁移的,虽说整个数据库的迁移没有成功,但传输指定的对象时还是传输成功了.所以还是记录一下吧. 1.前提连接好数据库.在指 ...
- 学习刘伟择优excel视频
for each 字符串函数: 默认参数,在子函数中必须要有默认值. 在工作表输入时,F9的功能是把区域编程数组,shift+ctrl+enter功能是把数组分开填入单元格. 创建数组: 1. 2. ...
- JMeter压力测试及服务器状态监控教程
转载自:https://blog.csdn.net/cbzcbzcbzcbz/article/details/78023327 前段时间公司需要对服务器进行压力测试,包括登录前的页面和登录后的页面,主 ...
- Beta阶段第五篇Scrum冲刺博客-Day4
1.站立式会议 提供当天站立式会议照片一张 2.每个人的工作 (有work item 的ID),并将其记录在码云项目管理中: 昨天已完成的工作. 张晨晨:目标增加单词收藏功能 郭琪容:学习收藏功能的实 ...
- 18:description方法
本小节知识点: [掌握]description基本概念 [掌握]description重写的方法 [了解]description陷阱 1.description基本概念 NSLog(@"%@ ...
- 第80讲:List的泛型分析以及::类和Nil对象
今天我们学习一下scala中的列表,List. 通过源码,我们可以发现,List类型是协变的,所以我们可以把Int类型的List赋值给Any型的List. 我们可以看到,List定义下有3个比较重要的 ...
- imooc movie
node+mongodb 建站攻略(一期) 用的都是我熟悉的技术,看了别人的开发过程,自己也学到了一些新的知识 生成配置文件 开发结束后,可以使用bower init来生成前端的配置文件. 不过在bo ...