11428

#include <iostream>
#include <cstdio>
#include <cstdio>
#include <cstring>
#include <vector>
#include <cmath>
#include <cstdlib>

#define INF 1000000
#define ll long long

using namespace std;

struct node{
	int x,y;
};
node arr[10005];
int main()
{
	int n,diff;
	int difference_arr[10005];

	for(int i=2;i<61;i++)
	{
		for(int j=1;j<i;j++)
		{
			diff = i*i*i - j*j*j;
			if(diff>10001)
			continue;

			difference_arr=1;
			if(arr.x==0 || arr.y==0)
			{
				arr.x=i;
				arr.y=j;
			}
			else
			{
				if(arr.y>j)
				{
					arr.x=i;
					arr.y=j;
				}
			}

		}
	}
	while(scanf("%d",&n),n)
	{

		if(difference_arr[n]==1)
			printf("%d %d\n",arr[n].x,arr[n].y);
		else
			printf("No solution\n");

	}
	return 0;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *