欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

bzoj2178 圆的面积并

程序员文章站 2022-05-18 14:33:39
description 给出n个圆,求其面积并 input 先给一个数字n ,n< = 1000 接下来是n行是圆的圆心,半径,其绝对值均为小于1000的整数 output 面积并,保留三位小...

description

给出n个圆,求其面积并

input

先给一个数字n ,n< = 1000 接下来是n行是圆的圆心,半径,其绝对值均为小于1000的整数

output

面积并,保留三位小数

simpson积分裸题

p.s. 如何解决线段长度并:按左端点排序,然后记录当前右端点的最大值,扫一遍即可。

#include
#include
#include
#include
#include
#include
#define f(i,j,n) for(int i=j;i<=n;i++)
#define d(i,j,n) for(int i=j;i>=n;i--)
#define ll long long
#define ull unsigned long long
#define ld double
#define maxn 1005
#define inf 1e9
#define eps 1e-7
using namespace std;
int n,tot;
bool tag[maxn];
struct circle{ld x,y,r;}a[maxn],b[maxn];
struct segment{ld l,r;}p[maxn];
inline int read()
{
	int x=0,f=1;char ch=getchar();
	while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
	while (ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
	return x*f;
}
inline bool cmpc(circle a,circle b)
{
	return a.r
}