当前位置: 首页 > wzjs >正文

企业建设网站的案例阿里巴巴官网下载安装

企业建设网站的案例,阿里巴巴官网下载安装,深圳去聋哑做义工申请网站,百度免费打开问题描述 小蓝在玩一个寻宝游戏,游戏在一条笔直的道路上进行,道路被分成了 n 个方格,依次编号 1 至 n,每个方格上都有一个宝物,宝物的分值是一个整数(包括正数、负数和零),当进入一…

问题描述

小蓝在玩一个寻宝游戏,游戏在一条笔直的道路上进行,道路被分成了 n 个方格,依次编号 1 至 n,每个方格上都有一个宝物,宝物的分值是一个整数(包括正数、负数和零),当进入一个方格时即获得了方格中宝物的分值。小蓝可以获得的总分值是他从方格中获得的分值之和。

小蓝开始时站在方格 1 上并获得了方格 1 上宝物的分值,他要经过若干步 到达方格 n。

当小蓝站在方格 p 上时,他可以选择跳到 p+1 到 p+D(n−p) 这些方格 中的一个,其中 D(1)=1,D(x)(x>1) 定义为 x 的最小质因数。

给定每个方格中宝物的分值,请问小蓝能获得的最大总分值是多少。

输入格式

输入的第一行包含一个正整数 n。

第二行包含 n 个整数,依次表示每个方格中宝物的分值。

输出格式

输出一行包含一个整数,表示答案。

样例输入

5
1 -2 3 -1 5

样例输出

8

思路:


代码:

记忆化搜索

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int a[N], mem[N], primes[N], min_primes[N], cnt, n;
bool st[N];
void get_primes(int n) 
{for (int i = 2; i <= n; i++) {if (!st[i]) {primes[++cnt] = i;min_primes[i] = i; // 记录质数的最小质因数是其本身}for (int j = 1; primes[j] <= n / i; j++) {st[primes[j] * i] = true;min_primes[primes[j] * i] = primes[j]; // 记录合数的最小质因数if (i % primes[j] == 0) {break;}}}
}
// 计算 x 的最小质因数
int D(int x) 
{if (x == 1) return 1;if (min_primes[x])return min_primes[x];else {cout << " 该数没有找到最小质因数 :" << endl;return 1e9;}
}// 深度优先搜索并记忆化
int dfs(int x) 
{if (mem[x] != -1)return mem[x];if (x == n)return a[x];int sum = -1e9;for (int i = x + 1; i <= x + D(n - x) && i <= n ; i++) {sum = max(sum, dfs(i));}mem[x] = sum + a[x];return mem[x];
}int main() 
{cin >> n;get_primes(n);for (int i = 1; i <= n; i++) {cin >> a[i];}memset(mem, -1, sizeof(mem));cout << dfs(1);return 0;
}    

dp:
 

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int a[N], dp[N], primes[N], cnt, n,min_primes[N];
bool st[N];
void get_primes(int n) 
{for (int i = 2; i <= n; i++) {if (!st[i]) {primes[++cnt] = i;min_primes[i] = i; // 记录质数的最小质因数是其本身}for (int j = 1; primes[j] <= n / i; j++) {st[primes[j] * i] = true;min_primes[primes[j] * i] = primes[j]; // 记录合数的最小质因数if (i % primes[j] == 0) {break;}}}
}
// 计算 x 的最小质因数
int D(int x) 
{if (x == 1) return 1;if (min_primes[x])return min_primes[x];else {cout << " 该数没有找到最小质因数 :" << endl;return 1e9;}
}
int main(void)
{cin >> n;get_primes(n);for (int i = 1; i <= n; i++) {cin >> a[i];}// 初始化 dp 数组for (int i = 1; i <= n; i++) {dp[i] = -1e9;}dp[1] = a[1];// 动态规划计算for (int i = 2; i <= n; i++) {for (int j = 1; j < i; j++) {if (i <= j + D(n - j) && i <= n) {dp[i] = max(dp[i], dp[j] + a[i]);}}}cout << dp[n];return 0;
}


文章转载自:

http://Ztzmaurr.tkgjL.cn
http://dYsbrzYE.tkgjL.cn
http://w5dZWcab.tkgjL.cn
http://qVKfc4Pk.tkgjL.cn
http://FhjX3JbB.tkgjL.cn
http://mFQHkJu1.tkgjL.cn
http://qw4pcoDg.tkgjL.cn
http://3cIneGt5.tkgjL.cn
http://iXH5eMG7.tkgjL.cn
http://BJs9hFJj.tkgjL.cn
http://jNmgU6bq.tkgjL.cn
http://ue84Hkwc.tkgjL.cn
http://QL2Y6b3E.tkgjL.cn
http://pn9cEi58.tkgjL.cn
http://JmeqZ4SS.tkgjL.cn
http://zGzrYi4r.tkgjL.cn
http://ppN23AVu.tkgjL.cn
http://Md78Gojl.tkgjL.cn
http://4ZZRKF5y.tkgjL.cn
http://13jpIAqA.tkgjL.cn
http://hWQ8au1G.tkgjL.cn
http://cCpE6dW4.tkgjL.cn
http://ShKTdW8G.tkgjL.cn
http://rMogJs1D.tkgjL.cn
http://2SsuslfF.tkgjL.cn
http://r70sKtvj.tkgjL.cn
http://QXHe77fG.tkgjL.cn
http://OMUmdejJ.tkgjL.cn
http://BTM8PnFt.tkgjL.cn
http://Yp34n4Ow.tkgjL.cn
http://www.dtcms.com/wzjs/770910.html

相关文章:

  • 做电子书屋的网站h5免费制作网站模板
  • 如何制作网页代码西安seo外包优化
  • 网站建设怎样推广怎么建设网站空间和备案
  • 做理论的网站深圳品牌网站制作多少钱
  • 十大黄冈网站排行榜如何做网站详细步骤图
  • 推荐做问卷的网站微软云怎么做网站
  • 质监站网址国内新闻最新
  • 商务网站建设推荐漳州做网站设计
  • 湖北省建设信息网站河南哪里网站建设公司
  • 给别人做网站需要什么许可证文字创意logo设计
  • A华企网络网站建设二维码导航网站源码
  • 阿里云做视频网站可以吗大米品牌推广方案
  • 网站上的链接怎么做的网站交互图片怎么做的
  • 南宁制作营销型网站深圳市龙华区
  • 以域名做网站关键词企业做网站优势
  • 网站规划与网页设计总结手机网站制作机构
  • 东莞连衣裙 东莞网站建设建设网站的优点跟缺点
  • 优秀网站设计欣赏图片广安建设局网站
  • 百度云域名买了之后建设网站网站没备案可以做淘宝客吗
  • 网站欢迎屏怎么做wordpress首页调用文章
  • 做新年公告图片的网站WordPress缓存规则设置
  • 贵阳网站建设包首页wordpress购买邀请码
  • wordpress 直播上海牛巨微seo
  • 淘宝客做自己的网站网站生成器怎么做
  • 十大外贸论坛一个新网站怎么做seo
  • 做旅游网站的关注与回复网片图片和价格
  • 个人网站做哪一种比较赚钱代码如诗 wordpress
  • 做品牌特价的网站有哪些哪些网站可以免费做代码
  • 做一个内容网站多少钱网站建设华企
  • 网站前端开发zion小程序官网