爱奇艺笔试题——坝上草原滑草
Description
1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9
一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-...-3-2-1更长。事实上,这是最长的一条。
Input
Output
Sample Input
5 5 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9
Sample Output
25
// 典型的动态规划,用递归下的记忆化搜索来实现 // 状态转移方程 合法的情况下:DP(i,j) = max( DP(i,j-1), DP(i,j+1), DP(i-1,j), DP(i+1,j) ) + 1; #include <iostream> using namespace std;int matrix[100][100];// 保存原始数据 int cnt[100][100]; // 记录每一个点的最大滑雪长度 int row ,col;int DP(int i, int j) {int max = 0;// 如果已经处理过,直接返回(记忆化搜索效率之所以高的原因:不重复计算)if (cnt[i][j] > 0) {return cnt[i][j];}// 以下四块语句,只对合法的i和j,进行递归(递归的重点就是:剪去所有不合法的,只处理所有合法的!!!)if (j-1 >= 0){if (matrix[i][j] > matrix[i][j-1]){if (max < DP(i, j-1)){max = DP(i, j-1);}}}if (j+1 <= col-1){if (matrix[i][j] > matrix[i][j+1]){if (max < DP(i, j+1)){max = DP(i, j+1);}}}if (i-1 >= 0){if (matrix[i][j] > matrix[i-1][j]){if (max < DP(i-1, j)){max = DP(i-1, j);}}}// 在这里我曾经很SB地将row错写成col,调试所有的行数等于列数的数据都没有问题,可是一提交就Wa// 注意,行数可能不等于列数!!!!if (i+1 <= row-1){if (matrix[i][j] > matrix[i+1][j]){if (max < DP(i+1, j)){max = DP(i+1, j);}}}// 将结果记录在cnt数组中(记忆化搜索的重点)// 如果左右上下都没有一个点的值比这个点的值大,则cnt[i][j] = max+1 = 1// 否则将左右上下各点最大滑雪长度记录在max中, 则cnt[i][j] = max+1 // 这就是max为什么要初始化为0的原因.return cnt[i][j] = max + 1; }int main() {int i, j; cin>>row>>col;// 初始化数据for (i=0; i<=row-1; i++){for (j=0; j<=col-1; j++){cin>>matrix[i][j];cnt[i][j] == 0;}}// 处理每一个点,将其最大滑雪长度保存在cnt数组里面for (i=0; i<=row-1; i++){for (j=0; j<=col-1; j++){DP(i, j);}}// 遍历数组,求最大值,在这里因为将cnt错写成matrix而wa了一次,真不应该!!!for (i=0; i<=row-1; i++){for (j=0; j<=col-1; j++){if (cnt[0][0] < cnt[i][j]){cnt[0][0] = cnt[i][j];}}}cout<<cnt[0][0]<<endl;return 0; }
http://poj.org/showmessage?message_id=113914
转载于:https://www.cnblogs.com/wzqx/p/5873653.html
爱奇艺笔试题——坝上草原滑草相关推荐
- 爱奇艺笔试题之成长值计算
题意如下: 成长值计算 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536KB:其他语言 589824KB 题目描述: 爱奇艺累计有2000万会员,为 ...
- python人工智能面试题爱奇艺面试题_爱奇艺面试Python,竟然挂在第5轮……
今天给大家分享我曾经在爱奇艺的面试,过程还是比较有意思的,可以给大家一些参考 聊骚阶段 嗲妹妹:你好,我是爱奇艺的HR,我们正在招聘运维开发岗位,请问您最近有在看工作机会吗? 我:(这声音也太酥了吧我 ...
- python人工智能面试题爱奇艺面试题_【爱奇艺Python面试】爱奇艺大数据面试 python-看准网...
爱奇艺大数据面试 python 通知的今天上午11点爱奇艺一轮面试,今天!周末!周末!周末!竟然还要面试,内心很无语,上个星期人家腾讯还是周一面试呢,但是,想想宿舍的一个小伙伴今天上午9点半的面试,庆 ...
- python人工智能面试题爱奇艺面试题_爱奇艺面试试题是什么?爱奇艺怎么面试的?...
动漫社区运营 职位描述: 1.负责社区的日常运营,管理监控社区运营数据; 2.深入分析社区用户需求.行为路径.交互等,对各项运营指标负责; 3.定期复盘,推进策略迭代以及运营方法改进,沉淀有效运营模式 ...
- python人工智能面试题爱奇艺面试题_经典算法题:爱奇艺研发工程师算法笔试题...
A. 7 B. 6 C. 4 D. 5 4.对关键码序列28,16,32,12,60,2,5,72快速排序,从小到大一次划分结果为 A. (5,16,2,12)28(60,32,72) B. (2,5 ...
- 爱奇艺,美团打车Java岗面试经历,这些问题我是真没抗住
前言 对, 就是今年的金九银十,我满怀希望的抓住了这次面试招聘的好机会,也只是没想到这才开始就遇到了不测,接连面试了两个心仪的公司都没过,面试过程可以算是最心酸了的一次经历了,最心酸的两次-详细的过程 ...
- 爱奇艺,腾讯Java岗面试经历,这些问题我是真没抗住
前言 对, 就是今年的金九银十,我满怀希望的抓住了这次面试招聘的好机会,也只是没想到这才开始就遇到了不测,接连面试了两个心仪的公司都没过,面试过程可以算是最心酸了的一次经历了,最心酸的两次-详细的过程 ...
- 爱奇艺,滴滴打车Java岗面试经历,这些问题我是真没抗住
前言 对, 就是今年的金九银十,我满怀希望的抓住了这次面试招聘的好机会,也只是没想到这才开始就遇到了不测,接连面试了两个心仪的公司都没过,面试过程可以算是最心酸了的一次经历了,最心酸的两次-详细的过程 ...
- [经验教程]iPhone苹果手机上怎么使用微信支付123元开通爱奇艺京东plus联名会员?
iPhone苹果手机上怎么使用微信支付123元开通爱奇艺京东plus联名会员? 1.打开爱奇艺京东plus官方联合会员活动页面: iPhone苹果手机上怎么使用微信支付123元开通爱奇艺京东plus联 ...
最新文章
- 在图像旁边垂直对齐文字?
- timm 笔记:数据集
- img should be PIL Image. Got <class ‘torch.Tensor‘>
- 1792 关于数论中的互质数的最大不能组合数
- 最大值和最小值的差(信息学奥赛一本通-T1112)
- 腾讯往事:微信其实就是第四代 QQ 邮箱
- js动态创建Form表单并提交
- 常用验证码功能实现大全
- fashion minst
- 财务总监的秘密:不用代码和Excel,10分钟做出高大上财务分析
- spring 实现小程序抖音去水印后台
- border-color属性设置单边边框和综合四边边框颜色
- oland显卡HDMI热插拔问题分析
- Python一路走来 DAY15 Javascript
- 三次握手与四次挥手的爱恨情仇
- 城市之眼视觉计算技术
- [安卓开发] 快递物流信息布局
- cesium采用primitive方式加载geojson数据
- 91 python高级 - 作用域
- 【BZOJ1502】[NOI2005]月下柠檬树 Simpson积分
热门文章
- RPR技术介绍-ielab
- python title 和capitiliaze_python全栈开发从入门到放弃之字符串的应用
- 『迷你教程』Keras中为截断的BPTT进行序列预测
- RNN学习笔记(一)-简介及BPTT RTRL及Hybrid(FP/BPTT)算法
- PCD文件格式(The PCD (Point Cloud Data) file format)
- 在cmd中用PING命令时,出现'Ping' 不是内部或外部命令,也不是可运行的程序或批处理文件。...
- 浏览器强制刷新快捷键 ctrl+F5
- 单链表指针和头结点的理解
- patch -p1 和p0 的区别
- M201: MongoDB Performance chapter 3 Index Operations学习记录