POJ 1329
模板题,注意一下输出就可以。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm> using namespace std;
struct point {
double x,y;
};
struct triangle{
point t[3];
}t;
struct Circle{
double x,y;
double r;
}tmp; double dist(point p1, point p2){
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
} double triangleArea(){
return fabs(t.t[0].x*t.t[1].y+t.t[1].x*t.t[2].y+t.t[2].x*t.t[0].y-
t.t[1].x*t.t[0].y-t.t[2].x*t.t[1].y-t.t[0].x*t.t[2].y)/2;
} int main(){
double x1,y1,x2,y2,x3,y3;
while(scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3)!=EOF){
t.t[0].x=x1; t.t[0].y=y1;
t.t[1].x=x2; t.t[1].y=y2;
t.t[2].x=x3; t.t[2].y=y3;
double a,b,c;
a=dist(t.t[0],t.t[1]);
b=dist(t.t[1],t.t[2]);
c=dist(t.t[2],t.t[0]);
tmp.r=(a*b*c)/triangleArea()/4;
double c1=(x1*x1+y1*y1-x2*x2-y2*y2)/2;
double c2=(x1*x1+y1*y1-x3*x3-y3*y3)/2;
tmp.x=(c1*(y1-y3)-c2*(y1-y2))/((x1-x2)*(y1-y3)-(x1-x3)*(y1-y2));
tmp.y=(c1*(x1-x3)-c2*(x1-x2))/((y1-y2)*(x1-x3)-(y1-y3)*(x1-x2));
printf("(x");
if(tmp.x>=0) printf(" - %0.3lf)^2 + (y",tmp.x);
else printf(" + %0.3lf)^2 + (y",-tmp.x);
if(tmp.y>=0) printf(" - %0.3lf)^2 =",tmp.y);
else printf(" + %0.3lf)^2 =",-tmp.y);
printf(" %0.3lf^2\n",tmp.r);
printf("x^2 + y^2");
if(tmp.x>0)
printf(" - %0.3lfx",2*tmp.x);
else printf(" + %0.3lfx",-2*tmp.x);
if(tmp.y>0)
printf(" - %0.3lfy",2*tmp.y);
else printf(" + %0.3lfy",-2*tmp.y);
double ans=tmp.x*tmp.x+tmp.y*tmp.y-tmp.r*tmp.r;
if(ans<0){
printf(" - %.3lf = 0\n",-ans);
}
else printf(" + %.3lf = 0\n",ans);
printf("\n");
}
return 0;
}
POJ 1329的更多相关文章
- poj 1329 Circle Through Three Points(求圆心+输出)
题目链接:http://poj.org/problem?id=1329 输出很蛋疼,要考虑系数为0,输出也不同 #include<cstdio> #include<cstring&g ...
- ●POJ 1329 Circle Through Three Points
题链: http://poj.org/problem?id=1329 题解: 计算几何,求过不共线的三点的圆 就是用向量暴力算出来的东西... (设出外心M的坐标,由于$|\vec{MA}|=|\ve ...
- POJ 1329 Circle Through Three Points(三角形外接圆)
题目链接:http://poj.org/problem?id=1329 #include<cstdio> #include<cmath> #include<algorit ...
- POJ 1329 Circle Through Three Points(三角形外心)
题目链接 抄的外心模版.然后,输出认真一点.1Y. #include <cstdio> #include <cstring> #include <string> # ...
- POJ 1329
三角外接圆
Circle Through Three Points Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3169 Acce ...
- POJ - 1329 Circle Through Three Points 求圆
Circle Through Three Points Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4112 Acce ...
- poj 1329(已知三点求外接圆方程.)
Circle Through Three Points Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3766 Acce ...
- [转] POJ计算几何
转自:http://blog.csdn.net/tyger/article/details/4480029 计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很巧妙2.做计算几何题目,模板 ...
- ACM计算几何题目推荐
//第一期 计算几何题的特点与做题要领: 1.大部分不会很难,少部分题目思路很巧妙 2.做计算几何题目,模板很重要,模板必须高度可靠. 3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面 ...
随机推荐
- 关于form/input 的autocomplete="off"属性
转自:http://blog.sina.com.cn/s/blog_b49f96a701019m0d.html 一. 有过表单设计经验的朋友肯定知道,当我们在浏览器中输入表单信息的时候,往往input ...
- 使用 Polyfill 而不再是 bable 来实践js新特性
现状 我们想要用ES6 语法来写 JavaScript.然而由于我们需要兼容老版本的浏览器,那些浏览器不支持 ES6,我们需要解决这个问题. 有一个标准的做法是:写 ES6 代码 → 将所有代码编译成 ...
- Java IO流文件复制/解压的几种方法总结
引言 在JavaWeb项目开发过程,涉及到IO文件的读写操作以及文件的复制copy操作是作为一个程序员不可获取的知识,那接下来就总结一些copy文件的一些方法,与大家通过学习,如果还有其他更好的方法, ...
- Python 38 sql基础
数据库服务器中存放的是 库(文件加) .表(文件) .表里面是记录(一行数据) 增 删 改 查 1.库相关 创建------------------create databa ...
- windows下react-native搭建环境
第一步:安装Java 1.下载JDK,选择适应自己的机型:官网地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...
- mysqlslap对mysql进行压力测试
mysqlslap是从5.1.4版开始的一个MySQL官方提供的压力测试工具.通过模拟多个并发客户端访问MySQL来执行压力测试,并且能很好的对比多个存储引擎在相同环境下的并发压力性能差别. mysq ...
- Assembly之instruction之Indirect Autoincrement Mode
Assembler Code Content of ROMMOV @R10+,0(R11) MOV @R10+,0(R11) Length: One or two words Operation: ...
- python3:语法变动 及新特性
python3.0 对python2.x 升级后重大语法变动,幸好留下2.7.6及后续2版本,保持一些语法兼容. 原始地址:http://hi.baidu.com/jxq61/item/3a24883 ...
- mysql 统计按天、星期、按月数据的各种 sql 语句 (转录)
文章主要是作为知识整理,内容略有修改,方便以后查阅,内容转摘至 陈宇衡的个人博客,欢迎前去围观. 作为演示效果,先创建一个测试表,在插入两条数据(注:时间为 datetime 类型,unix 时间戳需 ...
- 通过Static 字段来维护状态是不是一个好主意
static是申明静态字段.静态方法或者静态类的修饰符.使用static申明的字段属于类型本身而不属于任何字段,声明的类也具有一些特别特性,比如不能实例化,不能继承等.用通俗化的语言来说,static ...