华为od德科面试数据算法解析 2022-3-18 走梅花桩问题

个人寄语:

准备面试华为外包德科,记录一下一些面试题;
牛客网代码提交的坑,可以看一下下面的第一道题,ide本地编译通过,牛客网死活不通过,提交代码提示:返回非0。原因分析
  查询得知,结果非零的意思的代码退出的时候不是以正常的0退出的,而是非0状态,也就是代码出错了百思不得其解,到底为什么?平常写函数的时候,遇到特定条件,直接return返回,那return后面的代码将不会被执行,看到有一个C++代码网友反馈说return会被牛客网shell提交框替换成print,意思是会给你重新编排一次。这时候return就会出问题,return后面的代码会继续执行。
所以个人建议写代码不要写方法,直接写在main方法内部就行了。
 

题目:

Redraiment是走梅花桩的高手。Redraiment可以选择任意一个起点,从前到后,但只能从低处往高处的桩子走。他希望走的步数最多,你能替Redraiment研究他最多走的步数吗?

类似于最长上升子序列的问题:

代码解析:

# 最长递增子序列长度

length = int(input().strip())
num = list(map(int, input().strip().split()))
# dp[i]定义为以num[i]结尾的最长递增子序列长度
max_len 

猜你喜欢

转载自blog.csdn.net/qq_38735017/article/details/125552710