小米笔试第一题,python3,DP

import sys
lines = sys.stdin.readline()
l = list(map(int, lines.strip().split()))
left_num = sum(l)
dp = [[0, ] * len(l) for _ in range(len(l))]

for i in range(len(l)):
if len(l) % 2 == 0:
dp[i][i] = -l[i]
else:
dp[i][i] = l[i]
for s in range(1, len(l)):
for i in range(len(l)-s):
j = i+s
dp[i][j] = max(dp[i][i] - dp[i+1][j], dp[j][j] - dp[i][j-1])

# print(dp)
if len(l) % 2 == 1:
print("Yes") if dp[0][len(l)-1] >= 0 else print("No")
if len(l) % 2 == 0:
print("Yes") if dp[0][len(l)-1] <= 0 else print("Yes")

#笔试题目##Python##小米##题解#
全部评论
点赞 回复 分享
发布于 2019-09-06 21:11
dp[i][j]代表什么意思呀
点赞 回复 分享
发布于 2019-09-06 21:10
这个dp代表啥意思呀
点赞 回复 分享
发布于 2019-09-06 21:09
大佬你这报错吧 我试了一下
点赞 回复 分享
发布于 2019-09-06 20:58
第二题的源码 方便贴一下吗? 感谢啊~
点赞 回复 分享
发布于 2019-09-06 20:51
后台开发嘛?
点赞 回复 分享
发布于 2019-09-06 20:40
你们这个题题目是啥啊,感觉题不一样啊
点赞 回复 分享
发布于 2019-09-06 20:35
第一题是判断回文吗
点赞 回复 分享
发布于 2019-09-06 20:31
我Java回溯没写完时间就到了
点赞 回复 分享
发布于 2019-09-06 20:28
第二题怎么写
点赞 回复 分享
发布于 2019-09-06 20:25
😥这个要用dp吗
点赞 回复 分享
发布于 2019-09-06 20:24

相关推荐

_mos_:忍耐王
点赞 评论 收藏
分享
头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-24 20:25
腾讯今年实习招了这么多人,后面秋招还会招人吗??想着秋招再战来着
牛客965593684号:腾讯好像2020年之后就是实习生招得多,应届生基本上不招,纯实习转正
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务