题意:输入n,即指第几个数,输出S型排列的值。
思路:数学技巧题……以斜线求,K为斜线数,求s>=k即可求出是哪个数;但是k为偶数时要改变输出的顺序即可。
#include <stdio.h>
int main()
{
int n;
while (scanf("%d",&n)!=EOF)
{
int k=1,s=0;
for(;;)
{
s+=k;
if(s>=n)
{
if(k%2) printf("TERM %d IS %d/%d\n",n,s-n+1,k-s+n);
else printf("TERM %d IS %d/%d\n",n,k-s+n,s-n+1);
break;
}
k++;
}
}
return 0;
}