Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
	"strings"
)

func main() {
	n, err := strconv.Atoi(strScan())
	if err != nil {
		fmt.Println("数字を入力して下さい。")
	} else {
		var counter int = n
		var judgeArr []string
		scanner := bufio.NewScanner(os.Stdin)
		for scanner.Scan() {
			strArr := strings.Fields(scanner.Text())
			castNumArr := StringToInt(strArr)
			judgeArr = append(judgeArr, checkTriangle(castNumArr))
			counter--
			if counter == 0 {
				break
			}
		}
		for _, v := range judgeArr {
			fmt.Println(v)
		}
	}
}

func checkTriangle(i []int) string {
	if checkSt(i[0], i[1], i[2]) || checkSt(i[1], i[2], i[0]) || checkSt(i[2], i[0], i[1]) {
		return "YES"
	} else {
		return "NO"
	}
}

func Sq(x int) int {
	return x * x
}

func checkSt(a, b, c int) bool {
	return (Sq(a) + Sq(b)) == Sq(c)
}

func StringToInt(s []string) []int {
	var i []int
	for _, v := range s {
		castNum, err := strconv.Atoi(v)
		if err != nil {
			panic(err)
		}
		i = append(i, castNum)
	}
	return i
}

func strScan() (stringInput string) {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Scan()
	stringInput = scanner.Text()
	return
}

Python: i=1
n=int(input())
for i in range(1,n+1):
    a,b,c=map(int,input().split())
    if a==0 or b==0 or c==0:
        break
    else:
        if a>b:
            a,b=b,a
        else:
            a,b=a,b
        if b>c:
            b,c=c,b
        else:
            b,c=b,c
        if a>b:
            a,b=b,a
        else:
           a,b=a,b
        if a**2+b**2==c**2:
            print("YES")
        else:
            print("NO")

Python: n = int(input())

for i in range(n):
  a,b,c=map(int,input().split())
  a=a*a
  b=b*b
  c=c*c
  if a+b==c or a+c==b or b+c==a:
    print("YES")
  else:
    print("NO")

Python: n =  int(input())
for i in range(n):
    tri = input()
    tri_list = tri.split(" ")
    tri_list.sort()
    a = int(tri_list[2]) ** 2
    b = int(tri_list[0]) ** 2 + int(tri_list[1]) ** 2
    if a == b:
        print("YES")
    else:
        print("NO")

Python: def main():
    def inputs():
        li = []
        count = 0
        try:
            N = input()
            while count < int(N):
                li.append(input())
                count += 1
        except EOFError:
            return li
        return li

    li = inputs()
    for x in li:
        tmp = x.split(" ")
        tmp = sorted(tmp)
        a,b,c = int(tmp[0]),int(tmp[1]),int(tmp[2])
        if c**2 == a**2 + b**2:
            print("YES")
        else:
            print("NO")
    return None

main()

Python: import sys

for line in sys.stdin:
    a,b,c = [int(x) for x in line.split()]
    if (a**2+b**2) == c**2:
        print('YES')
    else:
        print('NO')

Python: n = int(input())
for cnt in range(n):
    t = list(map(int, input().split()))
    t.sort()
    if t[2]**2 == t[1]**2 + t[0]**2:
        print('YES')
    else:
        print('NO')

Python: s = int(input())

for x in range(s):
    r = sorted(list(map(int, input().split())))
    if r[2] ** 2 == r[0] ** 2 + r[1] ** 2:
        print('YES')
    else:
        print('NO')

Python: #coding:UTF-8
def Rec(N,List):
    for i in range(N):
        a=int(List[i].split(" ")[0])
        b=int(List[i].split(" ")[1])
        c=int(List[i].split(" ")[2])
        if a*a+b*b==c*c or a*a+c*c==b*b or b*b+c*c==a*a:
            print("YES")
        else:
            print("NO")

if __name__=="__main__":
    List=[]
    N=int(input())
    for i in range(N):
        List.append(input())
    Rec(N,List)

Python: times = int(input())

for i in range(0, times):
	edge = input().split(" ")
	edge.sort()
	if pow(int(edge[0]), 2) + pow(int(edge[1]), 2) == pow(int(edge[2]), 2):
		print("YES")
	else:
		print("NO")

Python: def main():
    n = int(input())
    while True:
        try:
            num_list = [int(i) for i in input().split()]
            num_list = sorted(num_list)
            a,b,c = num_list[0],num_list[1],num_list[2]
            if (a**2 + b**2) == c**2:
                print("YES")
            else:
                print("NO")
        except EOFError:
            break
    return None

if __name__ == '__main__':
    main()

Python: n = int(input())
for i in range(n):
    x, y, z =map(int, input().split())
    if x*x + y*y == z*z or y*y + z*z == x*x or x*x + z*z == y*y :
        print("YES")
    else:
        print("NO")

Python: for i in range(int(input())):
    a,b,c=map(lambda x:int(x)**2,input().split())
    if a+b==c or b+c==a or c+a==b:
        print("YES")
    else:
        print("NO")

Python: def is_triangle(x, y, z):
    x, y, z = sorted(x, y, z)
    return x**2 + y**2 == z**2

num = int(input())
for i in range(num):
    x, y, z = map(int, input().split())
    triangle = is_triangle(x, y, z)
    if triangle:
        print('YES')
    else:
        print('NO')

Python: i=0
N=int(input())
for i in range(N):
    i+=1
    a,b,c=map(int,input().split())
    if a>=c and a>=b:
        if a**2==b**2+c**2:
            print('YES')
        else:
            print('NO')
    elif b>=a and b>=c:
        if b**2==a**2+c**2:
            print('YES')
        else:
            print('NO')
    elif c>=a and c>=b:
        if c**2==a**2+b**2:
            print('YES')
        else:
            print('NO')

Python: n=int(input())
for i in range(n):
  triangle=list(map(int,input().split()))
  triangle.sort(reverse=True)
  if triangle[1]**2+triangle[2]**2==triangle[0]**2:
    print("YES")
  else:
    print("NO")

Python: tri_list = []
n =  int(input())
for i in range(n):
    #tri_list = list(map(int,input().split(" ")))
    k = int(input())
    tri_list = list(k.split(" "))
    tri_list.sort()
    a = int(tri_list[2]) ** 2
    b = int(tri_list[0]) ** 2 + int(tri_list[1]) ** 2
    if a == b:
        print("YES")
    else:
        print("NO")

Python: def main():
    n = int(input())
    li = [input() for _ in range(n)]
    li = sorted(li)
    for x in li:
        tmp = x.split(" ")
        tmp = sorted(tmp)
        a,b,c = int(tmp[0]),int(tmp[1]),int(tmp[2])
        if (a ** 2 + b **2) == c**2:
            print("YES")
        else:
            print("NO")
    return None

if __name__ == '__main__':
    main()

Python: N = int(input())
for i in range(N):
    a,b,c = sorted(map(int,input().split()))
    if a**2 + b**2 == c**2:
        print("YES")
    else:
        print("NO")

Python: delta = int(input())
tri_all = []
for i in range(delta):
	tri = list(map(int, input().split(' ')))
	tri.sort()
	tri_all.append(tri)

for i in range(len(tri_all)):
	if tri_all[i][0]**2 + tri_all[i][1]**2 == tri_all[i][2]**2:
		print('YES')
	else:
		print('NO')

Python: N=int(input())
for line in range(N):
    a,b,c = (int(i) for i in input().split())
    if (a**2+b**2==c**2) or (b**2+c**2==a**2) or (c**2+a**2==b**2):
        print('YES')
    else:
        print('NO')

Python: for n in range(input()):
  a,b,c=sorted(map(int,raw_input().split()))
  print ["YES","NO"][c*c-a*a-b*b]

Python: num=int(input())

for i in range(num):
	a=list(map(int,input().split(" ")))
	a.sort()
	if(a[0]**2+a[1]**2==a[2]**2):
		print("YES")
	else:	
		print("NO")

Python: N = input()
a = []
answer_list = []

for i in range(N):
    a.append(map(int, raw_input().strip().split()))

for j in range(len(a)):
    number_1 = a[j][0]
    number_2 = a[j][1]
    number_3 = a[j][2]

    number_1 = number_1 * 2
    number_2 = number_2 * 2
    number_3 = number_3 * 2

    if number_1 == number_2 + number_3:
        print("YES")
    if number_2 == number_3 + number_1:
        print("YES")
    if number_3 == number_1 + number_2:
        print("YES")

    else:
        print("NO")

Python: import sys
for i in sys.stdin:
    try:
        sidelen = [int(j) for j in i.split(" ")]
        if(sidelen[0]**2 == sidelen[1]**2 + sidelen[2]**2 or sidelen[1]**2 == sidelen[0]**2 + sidelen[2]**2 or sidelen[2]**2 == sidelen[0]**2 + sidelen[1]**2):
            print("YES")
        else:
            print("NO")
    except:
        continue