Problem:
Is it a Right Triangle?

Write a program which judges wheather given length of three side form a right triangle. Print "YES" if the given sides (integers) form a right triangle, "NO" if not so.

Input

Input consists of several data sets. In the first line, the number of data set, N is given. Then, N lines follow, each line corresponds to a data set. A data set consists of three integers separated by a single space.

Constraints

1 ≤ length of the side ≤ 1,000

N ≤ 1,000

Output

For each data set, print "YES" or "NO".

Sample Input

3
4 3 5
4 3 6
8 8 8

Output for the Sample Input

YES
NO
NO

Solution in JAVA (judge verdict: Wrong Answer)


import java.io.IOException;
import java.util.StringTokenizer;

/**
 *
 * @author AHSAN HABIB
 */
 class Main {

    static String ReadLn(int maxLg) // utility function to read from stdin
    {
        byte lin[] = new byte[maxLg];
        int lg = 0, car = -1;

        try {
            while (lg < maxLg) {
                car = System.in.read();
                if ((car < 0) || (car == '\n')) {
                    break;
                }
                lin[lg++] += car;
            }
        } catch (IOException e) {
            return (null);
        }

        if ((car < 0) && (lg == 0)) {
            return (null);  // eof
        }
        return (new String(lin, 0, lg));
    }

    public static void main(String[] args) {
        Main a = new Main();
        a.begin();
    }

    public void begin() {
        String input;
        StringTokenizer st;
        int a = 0, b = 0, c = 0;
        int lg = 0;
        int maxLg = 255;
        byte[] lin = new byte[maxLg];
        while (lg < maxLg) {
            try {
                int car = System.in.read();
                if ((car < 0) || (car == '\n')) {
                    break;
                }
                lin[lg++] += car;
            } catch (IOException ex) {
            }
        }
        int cases = Integer.parseInt(new String(lin, 0, lg));
        while (cases > 0) {
            input = Main.ReadLn(255);
            if(input == null){
                break;
            }
            st = new StringTokenizer(input);
            a = Integer.parseInt(st.nextToken());
            b = Integer.parseInt(st.nextToken());
            c = Integer.parseInt(st.nextToken());
            if (c * c == a * a + b * b) {
                System.out.println("YES");
            } else {
                System.out.println("NO");
            }
            --cases;
        }
    }
}