题意:按照题目要求,输出第N个数对应的数据
分析:将/左边的数据和右边的数据分开处理,如下图所示
每走一次斜线,就算是一次循环,然后每个循环都很有规律。当循环的圈数为偶数和为奇数时分别处理就好。
贴一下代码:(232k,0ms)
C++语言:
#include<iostream>
using
namespace
std;
int
main()
{
int
a
,b;
int
temp_a
,
temp_b;
int
i
,n;
int
num;
while(
cin
>>
num)
{
temp_a
=
0;
//用来控制循环结束
temp_b
=
0;
for(n
=
1 ;
temp_a
!=
num; n
++)
//n控制是第几次循环,同时也是这次循环的数的个数
{
if(n
%
2
==
0)
for(
i
=
1 ;
i
<= n
&&
temp_a
!=
num;
i
++)
{
a
=
i;
temp_a
++;
}
else
for(
i
= n ;
i
>
0
&&
temp_a
!=
num;
i
--)
{
a
=
i;
temp_a
++;
}
}
for(n
=
1;
temp_b
!=
num; n
++)
{
if(n
%
2
==
0)
for(
i
= n;
i
>
0
&&
temp_b
!=
num;
i
-- )
{
b
=
i;
temp_b
++;
}
else
for(
i
=
1;
i
<=n
&&
temp_b
!=
num;
i
++)
{
b
=
i;
temp_b
++;
}
}
cout
<<
"TERM"
<<
num
<<
"IS "
<<
a
<<
"/"
<<b
<<
endl;
}
}