回车型
#include<stdio.h>
#include<math.h>
int main()
{long n,i,m,x,y;
while (scanf("%d",&n),n)
{m=sqrt(n);
if (m*m==n)
{if (m%2==0)
{x=m;y=1;}
else {x=1;y=m;}}
else {
if (m%2==1)
{x=0;y=m+1;
if (n-m*m<=m+1) x=x+n-m*m;
else {x=m+1;
n=n-m*m-m-1;
y=y-n; } }
else {x=m+1;y=0;
if (n-m*m<=m+1) y=y+n-m*m;
else {y=m+1;
n=n-m*m-m-1;
x=x-n; } } }
printf("%d %d\n",x,y);
} return 0;
} 按照如果输出,1为(1,1)3为(2,2),答案是网上查的,尚在理解挺妙的
25 24 23 22 21
10 11 12 13 20
9 8 7 14 19
2 3 6 15 18
1 4 5 16 17