開始还以为暴力做不出来,须要找规律,找了半天找不出来。原来直接暴力。。

代码例如以下:

#include

int a[1000050];

int b[100000000]={0};

int main()

{

int i,k;

a[0]=0;

for(i=1;i<=500000;i++)

{

a[i]=a[i-1]-i;

if(a[i-1]-i>0&&!b[a[i-1]-i])

a[i]=a[i-1]-i;

else

a[i]=a[i-1]+i;

b[a[i]]=1;

}

while(scanf("%d",&k)!=EOF)

{

if(k==-1) break;

else

printf("%d\n",a[k]);

}

return 0;

}

查看原文