博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva 11437 - Triangle Fun
阅读量:6757 次
发布时间:2019-06-26

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

这是一道简单的计算几何;

 

In the picture below you can see a triangle ABC. Point D, E and F divides the sides BC, CA and AB into ratio 1:2 respectively. That is CD=2BD, AE=2CE and BF=2AF. A, D; B, E and C, F are connected. AD and BE intersects at P, BE and CF intersects at Q and CF and AD intersects at R.

So now a new triangle PQR is formed. Given triangle ABC your job is to find the area of triangle PQR.

 这是我在uva上做的第一道题,纪念一下 =_=

 

#include
using namespace std;typedef struct points{ double x,y; points(double xx=0,double yy=0):x(xx),y(yy){}}vectors;points operator + (points a,vectors b){ return points(a.x+b.x,a.y+b.y);}vectors operator - (points a,points b){ return vectors(a.x-b.x,a.y-b.y);}vectors operator * (double a,vectors b){ return vectors(a*b.x,a*b.y);}double cross(vectors a,vectors b){ return a.x*b.y-a.y*b.x;}points inter(points a,points b,points c,points d){ vectors v=b-a,w=d-c,u=a-c; double t=cross(w,u)/cross(v,w); return a+t*v;}int main(){ points a,b,c,d,e,f,p,q,r; int n,area; cin>>n; while(n--) { cin>>a.x>>a.y>>b.x>>b.y>>c.x>>c.y; d=b+1/3.0*(c-b); e=c+1/3.0*(a-c); f=a+1/3.0*(b-a); p=inter(a,d,b,e); q=inter(b,e,c,f); r=inter(c,f,a,d); area=(int)(0.5+cross(q-p,r-p)/2); cout<
<

 

 

转载地址:http://klweo.baihongyu.com/

你可能感兴趣的文章
java空和非空判断
查看>>
Linux系统时间的设置
查看>>
position:fixed失效情况
查看>>
丢了好几天没写,只因在做个小项目吗
查看>>
SSM-Spring-13:Spring中RegexpMethodPointcutAdvisor正则方法切入点顾问
查看>>
C#目录:藏锋
查看>>
如何在代码里打印程序所占用的内存
查看>>
大道至简
查看>>
实验5 Spark SQL编程初级实践
查看>>
SVG图案
查看>>
java 基础 --- volatile
查看>>
poj3158
查看>>
ubuntu 安装kafka
查看>>
学习基础知识真的枯燥
查看>>
航院1009: FatMouse’s Trade
查看>>
IntelliJ Idea 2017 免费激活方法
查看>>
redis基本配置和相关设置
查看>>
「小程序JAVA实战」小程序开发注册用户的接口(33)
查看>>
C#键盘事件处理父窗体子窗体
查看>>
实验六
查看>>