//按题目要求求出其数列!用查表的方法很容易就可以实现!
#include "iostream"
#include "memory.h"
using namespace std;
int num[500010];
int flag[10000100];//由于数组开小了,所以之前都运行不了!
int main()
{
int k, i;
memset(num, 0, sizeof(num));
memset(flag, 0, sizeof(flag));
num[0] = 0;
for (i = 1; i < 500010; i++)//建立起表格!
{
num[i] = num[i-1] - i;
if (num[i] <= 0 || flag[num[i]] == 1)
num[i] = num[i-1] + i;
flag[num[i]] = 1;
}
while (cin >> k && k != -1)
{
cout << num[k] << endl;
}
}
zoj 2421 Recaman's Sequence
最新推荐文章于 2018-08-03 17:26:23 发布