概述
很简单题,直接暴力运算。前人们都说这道题是简单DP,比较有道理
不过我觉得这道题好像模拟以下计算过程就完事了,不过想起来DP也是在模拟计算过程。。。结果我在网上也没查到模拟法的定义
这道题比较有意思的是数组范围,超~~~~大,本地根本无法通过,不过OJ上可以
#include<stdio.h>
#include<string.h>
#define max 10000000
#define N 500002
int a[N];
char vis[max];
// 数组要开成全局
int main(void){
int n, m;
memset( vis, 0, sizeof(vis));
memset( a, 0, sizeof(a));
for( m = 1; m < N; m++){
if( a[m-1] - m > 0 && !vis[a[m-1] - m]){
a[m] = a[m-1] - m;
vis[a[m]] = 1;
}
else{
a[m] = a[m-1] + m;
vis[a[m]] = 1;
}
}
while( scanf("%d", &n) != EOF && n != -1){
printf("%dn", a[n]);
}
return 0;
}
最后
以上就是飘逸台灯为你收集整理的POJ 2081 Recaman's Sequence的全部内容,希望文章能够帮你解决POJ 2081 Recaman's Sequence所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复