#include <stdio.h>
#include <math.h>
int main()
{
	int n;
	int x,y;
	int a=1;
	scanf("%d",&n);
	for(x=1;x<sqrt(1.0*n);x++){
		for(y=1;y<n;y++){
			if(x*x+y*y==n&&x<=y){
				printf("%d %d",x,y);
				printf("\n");
				a=0;
			}	
		}
	}
	if(a){
		printf("No Solution");
	}
	return 0;
}
主要是用了一个开根号,注意是要以x的递增顺序输出,记得加换行