#include <stdio.h>
#include <math.h>

#define NEED_FOR_SPEED 1

#if NEED_FOR_SPEED
#define mysqrt(x) sqr[x]
#else
#define mysqrt(x) sqrt(x)
#endif

int main(int argc, char *argv[])
{
	int i, j, k, l;
	float r1, r2, r3;
#if NEED_FOR_SPEED
	float sqr[48000];

	for(i = 0; i < 48000; i++)
		sqr[i] = sqrt(i);
#endif

	for(i = 100; i <= 12000; i++)
	{
		for(j = i + 1; j <= 12000; j++)
		{
			r1 = mysqrt(j + i);
			if(r1 == (int)r1)
			{
				for(k = j + 1; k <= 12000; k++)
				{
					r1 = mysqrt(k + i);
					r2 = mysqrt(k + j);
					if((r1 == (int)r1) && (r2 == (int)r2))
					{
						for(l = k + 1; l <= 12000; l++)
						{
							r1 = mysqrt(l + i);
							r2 = mysqrt(l + j);
							r3 = mysqrt(l + k);
							if((r1 == (int)r1) && (r2 == (int)r2) && (r3 == (int)r3))
							{
								r1 = mysqrt(i + j + k + l);
								if(r1 == (int)r1)
								{
									printf("a=%i b=%i c=%i d=%i\n", i, j, k, l);
									printf("root = %i\n", (int)r1);
									return 0;
								}
							}
						}
					}
				}
			}
		}
	}
	return 1;
}

