POJ1905-Expanding Rods-二分答案】的更多相关文章

题目:http://poj.org/problem?id=1905 恶心死了,POJ的输出一会要lf,一会要f,而且精度1e-13才过,1e-12都不行,错了一万遍终于对了. #include <stdio.h> #include <math.h> int main() { double l, n, c, r; while(scanf("%lf %lf %lf", &l, &n, &c) != EOF) { && n &l…
Expanding Rods Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 13688   Accepted: 3527 Description When a thin rod of length L is heated n degrees, it expands to a new length L'=(1+n*C)*L, where C is the coefficient of heat expansion. Whe…
题目链接:https://vjudge.net/problem/POJ-1905 题意:有一根长len的木棍,加热了n度,长度会膨胀为len*(1+n*c),c为膨胀系数.现在把这根木棍夹在两堵墙之间,木棍会向上弯曲变成弧形,求弧形中点和原木棍中点的高度差. 思路:刚开始以为是几何题,几何肯定是能做的.然后发现题解是二分,第一次二分double类的变量,学到了.设所求答案为dis,通过dis可以勾骨出半径R,然后求出弧长L,再比较L与真实弧长len.显然dis和L满足二分的单调性,那么就可以做了…
转载请注明出处:優YoU http://user.qzone.qq.com/289065406/blog/1301845324 大致题意: 一根两端固定在两面墙上的杆 受热弯曲后变弯曲.求前后两个状态的杆的中点位置的距离 解题思路: 几何和二分的混合体 如图,蓝色为杆弯曲前,长度为L.红色为杆弯曲后,长度为s.h是所求 依题意知 S=(1+n*C)*L 又从图中得到三条关系式; (1)       角度→弧度公式  θr = 1/2*s (2)       三角函数公式  sinθ= 1/2*L…
Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 10287   Accepted: 2615 Description When a thin rod of length L is heated n degrees, it expands to a new length L'=(1+n*C)*L, where C is the coefficient of heat expansion. When a thin rod is…
/** 题解晚上写 **/ #include <iostream> #include <math.h> #include <algorithm> #include <cstdio> using namespace std; ; int main() { double l,n,c; while(cin>>l>>n>>c){ &&n<&&c<) break; double ll; l…
题目链接:http://poj.org/problem?id=1905 题目大意:原长度为L的线段因受热膨胀为一段弧,线段L.弧长L'.温度n.膨胀率c满足L' =(1+n/c)*L;求线段的中点移动的最小距离. '?'代表的线段就是要求的距离. 怎么办呢?用分治,二分答案,验证弧长是否为目标弧长再进行调整. 首先利用相交弦定理[BA×EA=CA×DA]算出other(AE) 然后用(mid+other)/2得到r(CO) 再用r-mid(AO)除以r(CO)算出cos(θ) 再用acos算出θ…
UVA 10668 - Expanding Rods 题目链接 题意:给定一个铁棒,如图中加热会变成一段圆弧,长度为L′=(1+nc)l,问这时和原来位置的高度之差 思路:画一下图能够非常easy推出公式,设圆弧扇形部弧度r,那么能够计算出铁棒长度为lr/sin(r)这个公式在[0, pi/2]是单调递增的,所以能够用二分法去求解 要注意的一点是最后答案计算过程中带入mid,之前是带入x(二分的左边值),可实际上x是可能等于0的,而带入mid,因为是double型,所以mid实际上表示是一个很趋…
D - Expanding Rods POJ - 1905 When a thin rod of length L is heated n degrees, it expands to a new length L'=(1+n*C)*L, where C is the coefficient of heat expansion. When a thin rod is mounted on two solid walls and then heated, it expands and takes…
Expanding Rods Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 13780   Accepted: 3563 Description When a thin rod of length L is heated n degrees, it expands to a new length L'=(1+n*C)*L, where C is the coefficient of heat expansion.  Wh…