Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Circles Intersection

You are given circle $A$ with radius $r_a$ and with central coordinate $(x_a, y_a)$ and circle $B$ with radius $r_b$ and with central coordinate $(x_b, y_b)$.

Write a program which prints:

"2" if $B$ is in $A$,

"-2" if $A$ is in $B$,

"1" if circumference of $A$ and $B$ intersect, and

"0" if $A$ and $B$ do not overlap.

You may assume that $A$ and $B$ are not identical.

Input

The input consists of multiple datasets. The first line consists of an integer $N$ ($N \leq 50$), the number of datasets. There will be $N$ lines where each line represents each dataset. Each data set consists of real numbers:

$x_a$ $y_a$ $r_a$ $x_b$ $y_b$ $r_b$

Output

For each dataset, print 2, -2, 1, or 0 in a line.

Sample Input

2
0.0 0.0 5.0 0.0 0.0 4.0
0.0 0.0 2.0 4.1 0.0 2.0

Output for the Sample Input

2
0

Solution in JAVA (judge verdict: Wrong Answer)

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int count = sc.nextInt();
		for(int i = 0; i < count; i++){
			Circle a = new Circle(sc.nextDouble(),
					sc.nextDouble(), sc.nextDouble());
			Circle b = new Circle(sc.nextDouble(),
					sc.nextDouble(), sc.nextDouble());
			System.out.println(a.isInclude(b));
		}
		sc.close();
	}
	
	public static class Circle{
		private Point p;
		private double r;
		
		public Circle(double x, double y, double r){
			this(new Point(x,y), r);
		}
		public Circle(Point p, double r){
			this.p = p;
			this.r = r;
		}
		
		public Point getCenter(){return p;}
		public double getRadius(){return r;}
		
		public int isInclude(Circle c){
			double dist = this.p.distance(c.getCenter());
			if (this.r >= dist + c.getRadius() ){
				return 2;
			}else if(c.getRadius() >= dist + this.r){
				return -2;
			}else if(this.r + c.getRadius() >= dist){
				return 1;
			}else if(this.r + c.getRadius() < dist){
				return 0;
			}
			return -3;
		}
	}
	
	public static class Point{
		private double x,y;
		
		public Point(double x, double y){
			this.x = x;
			this.y = y;
		}
		public double getX(){return x;}
		public double getY(){return y;}
		
		public double distance(Point t){
			return Math.sqrt(
					Math.pow((this.x - t.getX()), 2)
					+Math.pow((this.y - t.getY()), 2));
		}
		
		public static double distance(Point a, Point b){
			return a.distance(b);
		}
	}
}