福建省赛-- Common Tangents(数学几何)
来源:互联网 发布:网络电视怎么切换频道 编辑:程序博客网 时间:2024/04/29 20:14
Accept: 191 Submit: 608Time Limit: 1000 mSec Memory Limit : 32768 KB
Problem Description
Two different circles can have at most four common tangents.
The picture below is an illustration of two circles with four common tangents.
Now given the center and radius of two circles, your job is to find how many common tangents between them.
Input
The first line contains an integer T, meaning the number of the cases (1 <= T <= 50.).
For each test case, there is one line contains six integers x1 (−100 ≤ x1 ≤ 100), y1 (−100 ≤ y1 ≤ 100), r1 (0 < r1 ≤ 200), x2 (−100 ≤ x2 ≤ 100), y2 (−100 ≤ y2 ≤ 100), r2 (0 < r2 ≤ 200). Here (x1, y1) and (x2, y2) are the coordinates of the center of the first circle and second circle respectively, r1 is the radius of the first circle and r2 is the radius of the second circle.
Output
For each test case, output the corresponding answer in one line.
If there is infinite number of tangents between the two circles then output -1.
Sample Input
Sample Output
#include<stdio.h>#include<math.h>#include<algorithm>using namespace std;int main(){int t;scanf("%d",&t);while(t--){int x1,x2,y1,y2,r1,r2;double s1;scanf("%d%d%d%d%d%d",&x1,&y1,&r1,&x2,&y2,&r2);if(x1==x2&&y1==y2&&r1==r2)printf("-1\n");else{s1=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); if(r1+r2<s1)printf("4\n");else if(r1+r2==s1)printf("3\n");else if(r1+r2>s1){if(s1+min(r1,r2)==max(r1,r2))printf("1\n");else if(s1+min(r1,r2)<max(r1,r2))printf("0\n");else printf("2\n");}}}return 0;}
- 福建省赛-- Common Tangents(数学几何)
- 2015福建省赛 Common Tangents 2213 (简单数学几何)
- 第六届福建省大学生程序设计竞赛-重现赛,Problem B Common Tangents【数学几何】
- FZU Problem 2213 Common Tangents(简单几何,分类讨论)——第六届福建省大学生程序设计竞赛-重现赛
- Common Tangents【第六届福建省大学生程序设计竞赛-重现赛】
- 第六届福建省大学生程序设计竞赛 Problem B Common Tangents【几何】
- 第六届福建省大学生程序设计竞赛 Common Tangents
- FOJ 2213 Common Tangents 【第六届福建省大学生程序设计竞赛】
- FZU 2213 Common Tangents
- FOJ Common Tangents
- Common Tangents FZU
- 2015福建省赛 fzoj RunningMan 2221 (数学博弈)
- 数学-几何
- 福建省赛E
- 福建省赛 RunningMan fzoj2221
- 2017福建省赛FZU2282 Wand
- 2017年福建省赛 FZU
- EOJ 1161 数学几何
- Android JNI技术, NDK开发
- Apache 集成subversion
- Java算法--华为oj字符串通配符
- iOS中正则表达式的使用
- Java Web开发中entityBean的习惯用法
- 福建省赛-- Common Tangents(数学几何)
- golang的ide:GoClipse
- 2016虚拟现实产业链格局将铺设
- [Python标准库]struct——二进制数据结构
- hdoj5600N bulbs
- Android SDK Manager国内下载缓慢的问题
- Ubuntu Apache 部署 Django
- C#使用C/C++编译的动态链接库dll
- hdoj5601N*M bulbs