https://www.acmicpc.net/problem/1002
원이 겹치는 경우, 외접하는 경우, 내접하는 경우
#include <stdio.h>
#include <math.h>
int main(void)
{
int T;
int i;
int x1, y1, r1, x2, y2, r2;
double distance;
int temp_x, temp_y, temp_r;
scanf("%d", &T);
for (i = 0; i < T; i++)
{
scanf("%d %d %d %d %d %d", &x1, &y1, &r1, &x2, &y2, &r2);
distance = sqrt((x1 - x2)*(x1 - x2)+ (y1 - y2)*(y1 - y2));
//r2가 더 큰 반지름
if (r1 > r2)
{
temp_x = x1;
temp_y = y1;
temp_r = r1;
x1 = x2;
y1 = y2;
r1 = r2;
x2 = temp_x;
y2 = temp_y;
r2 = temp_r;
}
if (x1 == x2 && y1 == y2 && r1 == r2) {
printf("-1\n");
}
else if (distance + r1 < r2) {
printf("0\n");
}
else if (distance + r1 == r2) {
printf("1\n");
}
else if(distance == r1+r2){
printf("1\n");
}
else if (distance > r1 + r2) {
printf("0\n");
}
else {
printf("2\n");
}
}
return 0;
}
'알고리즘 문제 풀이' 카테고리의 다른 글
[백준] - Fly me to the Alpha Centauri - 복습 (0) | 2021.01.31 |
---|---|
[백준] - 다리 놓기 - 복습 (0) | 2021.01.31 |
[백준] - 분산처리 - 복습 (0) | 2021.01.30 |
[백준] - 어린 왕자 - 복습 (0) | 2021.01.30 |
[백준] - 피보나치 함수 - 복습 (0) | 2021.01.30 |
댓글