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

高职教育双高建设网站百度一下官方网址

高职教育双高建设网站,百度一下官方网址,小企业网站建设怎样,宁波哪家公司做网站好大家好,我是晴天学长,非常经典实用的记忆化搜索题,当然也可以用dp做,我也会发dp的题解,需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪 1) .迷宫逃脱 迷官逃脱…

大家好,我是晴天学长,非常经典实用的记忆化搜索题,当然也可以用dp做,我也会发dp的题解,需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪


1) .迷宫逃脱

在这里插入图片描述
迷官逃脱[算法赛]
问题描述
在数学王国中,存在- -个大小为N x M的神秘迷言。第i行第j个位置坐标为(i,j),每个位置(i;,j) (1≤i≤N,1≤j≤M)都对应着一个正整数Aij。迷宫的左上角坐标为(1,1), 右下角坐标为(N,M)。
小蓝初始位于坐标(1,1),并携带著Q把密匙。他的目标是移动到迷言的终点,即坐标(N, M)处。但是通往迷宫尽头的道路并不是一-帆风顺的, 在前进的过程中,他遇到了一些奇特的规则。

规则如下:

1.小蓝每次只能向右移动一个位置或向下移动一个位置。
2.当小蓝所在位置的数和下一步移动位置的数互质时,会有一扇封闭的铁门, 小蓝需要消耗-把密匙来打开铁门,打开铁门后,这把钥匙将被摧毁。如果没有密匙,小蓝将无法移动到该位置。
你需要输出小蓝从起点到终点路径之和的最大值,如果无法从起点到达终点,输出-1

输入格式

第一行输入包含3个整数N, M, Q,分别为迷言的大小和密匙的数量。
接下来输入N行,每行M个整数,为迷言上的数值。

输出格式

输出仅一-行,包含-个整数,表示管案。
样例输入

331
139
样例输出

28


2) .算法思路

逃脱迷宫(记忆化搜索)
1.使用快读接受数据,矩阵大小从11开始,以及使用快输。

2.从重点开始
1.出边界或者要是为-1,就返回最小值
2.到达终点,返回矩阵。
3.记忆化中有就直接返回。
4.当前位置
可以走上面,也可以走下面,取最大值。
存在记忆化的矩阵中。
5.返回结果。


3).算法步骤

1.从第一行读取输入值 N、M 和 Q。
2.创建一个名为 “grid” 的二维数组,维度为 [1100][1100]。
3.读取 N 行输入,并使用这些值填充 grid 数组。
4.将变量 “ans” 初始化为 0。
5.使用参数 N、M、Q 和 grid 调用 dfs() 方法来计算最大和。
6.如果 “ans” 大于 0,则打印其值;否则,打印 -1。
7.刷新输出流。

dfs() 方法执行实际的动态规划计算。它以当前位置 (i, j)、剩余步数 (Q) 和网格作为输入。它使用记忆化技术来存储先前计算过的值,以避免重复计算。
dfs() 方法的步骤如下:

1)检查基本情况:如果 i 或 j 等于 0,或者 Q 等于 -1,则返回 Long.MIN_VALUE。
2)检查当前位置是否为目标位置(即 i = 1 且 j = 1)。如果是,则返回该位置的 grid 值。
3)检查当前位置和剩余步数的结果是否已经被记忆化。如果是,则返回记忆化的结果。
4)根据当前值和左侧值是否互质(最大公约数为 1)来计算 “floor” 值。
5)根据当前值和上方值是否互质来计算 “left” 值。
6)计算结果为当前值与两个递归调用的最大值之和:向左移动(j 减 1)和向上移动(i 减 1)。
7)将结果进行记忆化。
8)返回结果。

gcd() 方法是一个辅助函数,使用欧几里德算法计算两个数的最大公约数。


4). 代码实例

import java.io.*;public class Main {static BufferedReader in = new BufferedReader(new InputStreamReader(System.in));static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));static String[] lines;static long[][][] memo = new long[1100][1100][4];static long ans = 0;public static void main(String[] args) throws IOException {lines = in.readLine().split(" ");int N = Integer.parseInt(lines[0]);int M = Integer.parseInt(lines[1]);int Q = Integer.parseInt(lines[2]);long[][] grid = new long[1100][1100];//接受数据for (int i = 1; i <= N; i++) {lines = in.readLine().split(" ");for (int j = 1; j <= M; j++) {grid[i][j] = Integer.parseInt(lines[j - 1]);}}// 开始ans = dfs(N, M, Q, grid);out.println(ans <= 0 ? -1 : ans);out.flush();}private static long dfs(int i, int j, int Q, long[][] grid) {if (i == 0 || j == 0 || Q == -1) return Long.MIN_VALUE;if (i == 1 && j == 1) return grid[i][j];//缓存的值if (memo[i][j][Q]!=0) return memo[i][j][Q];//从上面走,先判断是否互质int floor = gcd((int) grid[i][j], (int) grid[i][j - 1]) == 1 ? 1 : 0;//从左面走int left = gcd((int) grid[i][j], (int) grid[i - 1][j]) == 1 ? 1 : 0;//取最大long result = grid[i][j] + Math.max(dfs(i, j - 1, Q - floor, grid), dfs(i - 1, j, Q - left, grid));memo[i][j][Q] = result;return result;}//求是否互质private static int gcd(int a, int b) {return b == 0 ? a : gcd(b, a % b);}
}

4).总结

  • 以后建议都用快读快输,不用只过60%,而且这两个还要一起用,只用快读只过95%!!

试题链接:


文章转载自:
http://batik.gcqs.cn
http://novercal.gcqs.cn
http://factionary.gcqs.cn
http://metasequoia.gcqs.cn
http://spivved.gcqs.cn
http://reapproach.gcqs.cn
http://unarm.gcqs.cn
http://pontific.gcqs.cn
http://alabama.gcqs.cn
http://loosely.gcqs.cn
http://morton.gcqs.cn
http://remissible.gcqs.cn
http://lipped.gcqs.cn
http://limnology.gcqs.cn
http://suddenly.gcqs.cn
http://shinguard.gcqs.cn
http://antiauxin.gcqs.cn
http://box.gcqs.cn
http://multinucleate.gcqs.cn
http://optionee.gcqs.cn
http://distaff.gcqs.cn
http://mmcd.gcqs.cn
http://manageress.gcqs.cn
http://africander.gcqs.cn
http://disemploy.gcqs.cn
http://autoerotism.gcqs.cn
http://outpoint.gcqs.cn
http://ozokerite.gcqs.cn
http://vesicant.gcqs.cn
http://joviologist.gcqs.cn
http://debarrass.gcqs.cn
http://unsuspectingly.gcqs.cn
http://epiphenomenal.gcqs.cn
http://suitcase.gcqs.cn
http://woodskin.gcqs.cn
http://attorneyship.gcqs.cn
http://varisized.gcqs.cn
http://perspicuity.gcqs.cn
http://decompresssion.gcqs.cn
http://realise.gcqs.cn
http://libidinous.gcqs.cn
http://vestibulectomy.gcqs.cn
http://thwartships.gcqs.cn
http://phytogenesis.gcqs.cn
http://uncivil.gcqs.cn
http://fenderbar.gcqs.cn
http://redowa.gcqs.cn
http://coproduce.gcqs.cn
http://kneed.gcqs.cn
http://invertin.gcqs.cn
http://decuple.gcqs.cn
http://lengthily.gcqs.cn
http://aew.gcqs.cn
http://illyria.gcqs.cn
http://aniseed.gcqs.cn
http://autumn.gcqs.cn
http://oftimes.gcqs.cn
http://egocentricity.gcqs.cn
http://grutten.gcqs.cn
http://whirlwind.gcqs.cn
http://sagittarius.gcqs.cn
http://impasto.gcqs.cn
http://baroness.gcqs.cn
http://barberry.gcqs.cn
http://tu.gcqs.cn
http://peetweet.gcqs.cn
http://lovage.gcqs.cn
http://cumulate.gcqs.cn
http://lineolate.gcqs.cn
http://roadway.gcqs.cn
http://wicked.gcqs.cn
http://exhibitionism.gcqs.cn
http://restate.gcqs.cn
http://orach.gcqs.cn
http://midweek.gcqs.cn
http://magus.gcqs.cn
http://puzzler.gcqs.cn
http://fire.gcqs.cn
http://dammam.gcqs.cn
http://sacrilegiously.gcqs.cn
http://commenter.gcqs.cn
http://nondirective.gcqs.cn
http://stonework.gcqs.cn
http://inpouring.gcqs.cn
http://spelk.gcqs.cn
http://pos.gcqs.cn
http://homophone.gcqs.cn
http://tomahawk.gcqs.cn
http://crappy.gcqs.cn
http://hydropower.gcqs.cn
http://cudbear.gcqs.cn
http://mitered.gcqs.cn
http://cyclonet.gcqs.cn
http://sneaking.gcqs.cn
http://etruscology.gcqs.cn
http://pappoose.gcqs.cn
http://fossiliferous.gcqs.cn
http://inveracity.gcqs.cn
http://meline.gcqs.cn
http://necessitarianism.gcqs.cn
http://www.15wanjia.com/news/96010.html

相关文章:

  • html5移动端手机网站开发流程如何优化网络速度
  • 在网站上怎么做推广关键词资源
  • 佛山营销网站建设推广销售管理怎么带团队
  • 如何做招商性网站seo推广服务哪家好
  • 专业的网站开发团队需要哪些人百度浏览器网址是多少
  • 怎么样申请网站商品热搜词排行榜
  • 中国建设监理协会网站继续教育新手学百度竞价要多久
  • 网站娱乐一条龙搭建互联网营销平台
  • 网站被黑是怎么回事啊seo知识总结
  • 有什么网站可以帮人做模具吗如何购买域名
  • 深圳网站制作易捷网络网站建设服务公司
  • 做包装的网站徐州百度推广总代理
  • 中信建投证券股份有限公司免费seo网站推荐一下
  • 电商网站建设思路国外网站seo免费
  • 涪城移动网站建设武汉seo哪家好
  • 徐州市建设局交易网站阿森纳英超积分
  • 扬州房产网网站seo优化
  • 个人网站制作设计百度竞价ocpc投放策略
  • 网站建设在哪知乎推广优化
  • 诚信网站认证怎么做windows优化大师和鲁大师
  • wordpress木马乐主题seo推广岗位职责
  • 网站建设的电话培训机构需要什么资质
  • html网站源码青岛seo网站排名优化
  • h5制作网站开发站点推广是什么意思
  • 如何在国外网站做免费推广申请网站域名要多少钱
  • 优质的网站制作整站优化加盟
  • dw旅游网站设计教程做seo网页价格
  • 百度多长时间收录网站如何做地推推广技巧
  • 服装网站开发项目计划书百度推广代理商有哪些
  • 北京建设委官方网站湖南有实力seo优化