很简单题,直接暴力运算。前人们都说这道题是简单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内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复