LA 4064 求n个点 可以组成多少个锐角或者直角三角形
来源:互联网 发布:网络分销协议 编辑:程序博客网 时间:2024/05/07 12:34
#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#define eps 1e-8#define PI acos(-1.0)using namespace std;struct node{double x,y;}p[1260];double d[2560];int dcmp(double x){if(fabs(x)<eps)return 0;elsereturn x>0?1:-1;}int main(){ int n,t=1; while(~scanf("%d",&n) && n) { long long int res=0;for(int i=0;i<n;i++)scanf("%lf%lf",&p[i].x,&p[i].y); for(int i=0;i<n;i++){int cnt=0;for(int j=0;j<n;j++){if(i!=j)d[cnt++]=atan2(p[j].y-p[i].y,p[j].x-p[i].x);}sort(d,d+cnt);for(int j=0;j<cnt;j++)d[j+cnt]=d[j]+2*PI;int l=0,r=0;for(int j=0;j<cnt;j++){while(dcmp(d[l]-d[j]-PI/2)<0)l++;while(dcmp(d[r]-d[j]-PI)<0)r++;res+=(r-l); }} res=n*(n-1)*(n-2)/6-res; printf("Scenario %d:\n",t++); printf("There are %lld sites for making valid tracks\n",res); } return 0;}
阅读全文
0 0
- LA 4064 求n个点 可以组成多少个锐角或者直角三角形
- C++求解:平面上有n个点,问总共可以组成多少条直线
- LA 5846 n个点 任意2点间有一条红色,或者蓝色边 求单色三角形的个数
- n个点可以有多少形态的二叉树
- 搜狗笔试题~求圆上的点最多可以组成多少个钝角三角形
- HDU5784(n个点组成多少钝角三角形,然而无论什么三角形都是同理的)
- 数学问题 30个点组成多少个三角形
- LA 3720 Highway n x m的点阵 有多少条直线穿过至少2个点
- 求N!末尾有多少个0
- 求N!末尾有多少个0
- 求n! 末尾有多少个0
- 求n!末尾有多少个0
- 多少个1组成的整数可以被2011整除?
- 多少个1组成的整数可以被2016整除?
- 多少个1组成的整数可以被2011整除?
- 多少个1组成的整数可以被2011整除?
- 多少个1组成的整数可以被2011整除
- n个节点能组成多少种二叉树
- 77. Combinations
- SignalR在ASP.NET MVC中的应用
- Thinkphp3.2.3分页锁定搜索条件
- JSTL表达式
- 关于对电离层物理的一点理解
- LA 4064 求n个点 可以组成多少个锐角或者直角三角形
- POJ 3414 Pots(广搜)
- 串口通信——读串口信息
- 全新认识Material Design
- lucene基础
- hdu6045 Is Derek lying? -逻辑题-2017多校联盟2 1题
- hdu1429 胜利大逃亡(续) (BFS+简单状态压缩)
- 欢迎使用CSDN-markdown编辑器
- 消息队列