首页 > 代码库 > POJ 2081 Recaman's Sequence(水题)
POJ 2081 Recaman's Sequence(水题)
【题意简述】:这个题目描述很短,也很简单。不再赘述。
【分析】:只需再加一个判别这个数是否出现的数组即可,注意这个数组的范围!
// 3388K 0Ms #include<iostream> using namespace std; #define Max 500001 int a[Max]; bool b[10000000] = {false}; // b的数据范围是可以试出来的… void init() { a[0] = 0; b[0] = true; for(int m = 1;m<Max;m++) { a[m] = a[m-1]-m; if(a[m]<0||b[a[m]]) { a[m] = a[m-1] + m; } else{ a[m] = a[m-1] - m; } b[a[m]] = true; } } int main() { init(); int k; while(cin>>k) { if(k == -1) break; cout<<a[k]<<endl; } return 0; }
POJ 2081 Recaman's Sequence(水题)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。