博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ural(Timus) 1333. Genie Bomber 2
阅读量:6168 次
发布时间:2019-06-21

本文共 806 字,大约阅读时间需要 2 分钟。

几何题

题意:给出n个圆的圆心坐标和半径,给出一个单位方格,在(0,0),(0,1),问这些圆覆盖的面积占方格的百分比,圆超出方格的部分不计算。另外算百分比,答案精确到1%即可,即整数部分正确即可,小数部分不要求

这题,可以想按照题意直接下手,未免太难了,另外注意到答案的输出,其实对精度的要求很低(对小数都没要求)。我们可以用一直近似的算法来解决

将方格分割为一个一个的小格子,当分割得很小的时候,格子可以看做是一个点,然后看这个点在不在圆上或圆内,在的话相当于圆覆盖了这个点,覆盖了这个格子。所以我们将1*1方格分割为1000*1000的格子,然后逐一去判断,很暴力的方法,但就是这样过了

 

#include 
#include
#include
#include
using namespace std;const double PI = acos(-1.0);const double E = 1e-8;const int N = 15;const int M = 1000;const double B = 0.001;struct crc{ double x,y,r;}a[N];int n;double dis(double x ,double y , struct crc p){ return sqrt( (x-p.x)*(x-p.x) + (y-p.y)*(y-p.y));}int judge(double x , double y){ for(int i=0; i

 

转载于:https://www.cnblogs.com/scau20110726/archive/2013/05/04/3060330.html

你可能感兴趣的文章
关于延迟加载(lazy)和强制加载(Hibernate.initialize(Object proxy) )
查看>>
Cent OS 环境下 samba服务器的搭建
查看>>
vCloud Director 1.5.1 Install Procedure
查看>>
hive 中的多列进行group by查询方法
查看>>
Cisco统一通信---视频部分
查看>>
nginx编译及参数详解
查看>>
VMware下PM魔术分区使用教程
查看>>
nslookup错误
查看>>
我的友情链接
查看>>
Supported plattforms
查看>>
做自己喜欢的事情
查看>>
CRM安装(二)
查看>>
QC在安装过程中的问题
查看>>
LeetCode - 4. Median of Two Sorted Arrays : 逆推法 O(log(min(m,n))))
查看>>
Win7中你或许不知道的一些快捷键
查看>>
Jquery Mobile示例
查看>>
cache和buffer区别
查看>>
C# 通用单例窗体类
查看>>
IOS消息推送
查看>>
xml的解析与创建——bing到youdao导入文件的转换
查看>>