Problem:
プラスティック板

機械に辺・対角線の長さのデータを入力し、プラスティック板の型抜きをしている工場があります。この工場では、サイズは様々ですが、平行四辺形の型のみを切り出しています。あなたは、切り出される平行四辺形のうち、長方形とひし形の製造個数を数えるように上司から命じられました。

「機械に入力するデータ」を読み込んで、長方形とひし形の製造個数を出力するプログラムを作成してください。

Input

入力は以下の形式で与えられます。

a1,b1,c1
a2,b2,c2
:

機械に入力するデータが複数行に与えられます。i 行目に i 番目の平行四辺形の隣り合う２辺の長さを表す整数 ai, bi と対角線の長さを表す整数 ci がカンマ区切りで与えられます (1 ≤ ai, bi, ci ≤ 1000, ai + bi > ci)。データの数は 100 件を超えません。

Output

１行目に長方形の製造個数、２行目ひし形の製造個数を出力します。

Sample Input

3,4,5
5,5,8
4,4,4
5,4,3

Output for the Sample Input

1
2

Solution in JAVA (judge verdict: Wrong Answer)

import java.util.Scanner;
public class Main{
	static Double Long[]=new Double[3];
	public static void main(String args[]){
		Scanner sc = new Scanner(System.in);
		int c1 = 0;
		int c2 = 0;
		String numbers;
		while(sc.hasNext()){
			numbers = sc.next();
			String str[]=numbers.split(",");
			for(int i = 0;i < 3;i++){
				Long[i]=Double.parseDouble(str[i]);
			}
				if(Long[0]<Long[1]){
					double temp = Long[0];
					Long[0] = Long[1];
					Long[1] = temp;
				}
			
			if(Check(Long[0],Long[1],Long[2])){
				continue;
			}
			if(Check2(Long[0],Long[1],Long[2])){
				c1++;
			}else if(Check3(Long[0],Long[1],Long[2])){
				c1++;
			}else{
				c2++;
			}
		}
		System.out.println(c1);
		System.out.println(c2);
		}
		public static boolean Check( double a,double b,double c){//??£?????¢????¢????
			if(a==b){
				if( a==c){
					return true;
				}
		}
			return false;
	}
		public static boolean Check2(double a,double b,double c){//????????¢????¢???????
			if(a == c/2){
				if(b == Math.sqrt(a*3)){
					return true;
				}
			}
			return false;
		}
		public static boolean Check3(double a,double b,double c){//????????¢????¢???????
			if(Math.pow(c,2.0)==Math.pow(b, 2.0)+Math.pow(a,2.0)){
				return true;
			}
		return false;
		}
}