#!/usr/local/bin/cz --
use b
Main:
	long max = 500000000
	long k, v, a_max, a, b, c, c2
	for k=1 ; ; ++k:
		v = k*(k+1)*(k+2)*(k+3) / 4
		if v > max:
			break
		a_max = sqrt(v)
		for a=1; a<=a_max; ++a:
			b = v/a
			if a*b == v:
				c2 = a*a + b*b
				c = (long)round(sqrt(c2))
				if c*c == c2:
					found()

def found():
	printf("%ld * %ld = %ld ; %ld^2 + %ld^2 = %ld^2 ; %ld*%ld*%ld*%ld/4 = %ld\n", a, b, v, a, b, c, k, k+1, k+2, k+3, v)

# $ time ./triples
# 12 * 35 = 420 ; 12^2 + 35^2 = 37^2 ; 5*6*7*8/4 = 420
# 20 * 21 = 420 ; 20^2 + 21^2 = 29^2 ; 5*6*7*8/4 = 420
# 28 * 45 = 1260 ; 28^2 + 45^2 = 53^2 ; 7*8*9*10/4 = 1260
# 20 * 99 = 1980 ; 20^2 + 99^2 = 101^2 ; 8*9*10*11/4 = 1980
# 119 * 120 = 14280 ; 119^2 + 120^2 = 169^2 ; 14*15*16*17/4 = 14280
# 120 * 1798 = 215760 ; 120^2 + 1798^2 = 1802^2 ; 29*30*31*32/4 = 215760
# 136 * 2310 = 314160 ; 136^2 + 2310^2 = 2314^2 ; 32*33*34*35/4 = 314160
# 1386 * 3120 = 4324320 ; 1386^2 + 3120^2 = 3414^2 ; 63*64*65*66/4 = 4324320
# 420 * 14697 = 6172740 ; 420^2 + 14697^2 = 14703^2 ; 69*70*71*72/4 = 6172740
# 444 * 16425 = 7292700 ; 444^2 + 16425^2 = 16431^2 ; 72*73*74*75/4 = 7292700
# 6678 * 24840 = 165881520 ; 6678^2 + 24840^2 = 25722^2 ; 159*160*161*162/4 = 165881520
#
# real    0m0.085s
