uvaoj10161
这类题就是找规律,数学类的题,不适合浪费空间,而是找规律,找计算的公式。
本题提看到图就知道它是怎么走的,相当于一环一环的走(四分之一环),重要的是找到对角线特点,同坐对角线的坐标比较好找 该找的位置。(注意它给你坐标方向的特点 行是从上到下 变小,列从左到右变大)
#include<stdio.h>
#include<math.h>
int main()
{
int ans;
int row;
int x,y,res;
while(scanf("%d",&ans))
{
if(ans==0)break;
row = sqrt(ans);
if( row*row < ans )
row ++;
x = row;
y = row;
res = row*row - row+1;
if(row%2==0)
{
while(ans > res)
{y--;res++;}
while(ans < res)
{x--;res--;}
}
else
{
while(ans > res )
{x--;res++;}
while( ans< res)
{y--;res--;}
}
printf("%d %d\n",x,y);
}
return 0;
}