bzoj4920: 薄饼切割

传送门
首先要发现其实木棍覆盖区域是圆环形状的。
于是我们要求出大圆半径R和小圆半径r
首先大圆半径显然是在两个端点处取到的。
然后,发现点在木棍上移动是与圆心距离的函数是单峰函数。
于是我们可以三分求最小值。
然后问题九转化成了圆形面积和长方形面积的交。
分类要论以下就可以求出来了。

#include<cmath>
#include<cstdio>  
#include<cstdlib>
#include<cstring>  
#include<iostream>
#include<algorithm>
#define eps 1e-10
#define pi acos(-1)
#define db double
using namespace std;
int t;
db d1,d2;
db sqr(db x){
    return x*x;
}
struct P{
    db x,y;
    P(){};
    P(db _,db __):
        x(_),y(__){}
    void read(){
        scanf("%lf%lf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值