题目如下:

解题思路:求最值的题目优先考虑是否可以用动态规划。记dp[i][j]表示在数组A的第j个元素后面加上第i+1 (i从0开始计数)个分隔符后可以得到的最大平均值,那么可以得到递归关系式: dp[i][j] = max(dp[i][j],dp[i-1][k]+float(sum(A[k+1:j+1]))/float(j-k)) 。

代码如下:

class Solution(object):
def largestSumOfAverages(self, A, K):
"""
:type A: List[int]
:type K: int
:rtype: float
"""
tl = [0] * len(A)
dp = []
for i in range(K):
dp.append(tl[:]) count = 0
for i in range(len(dp)):
for j in range(len(dp[i])-K+i+1):
count += A[j]
if i == 0:
dp[i][j] = float(count)/float(j+1)
continue
for k in range(j):
#print k,j,sum(A[k:j])
dp[i][j] = max(dp[i][j],dp[i-1][k]+float(sum(A[k+1:j+1]))/float(j-k)) return dp[-1][-1]

最新文章

  1. 【php爬虫】百万级别知乎用户数据爬取与分析
  2. Tomcat 启动报错:No default web.xml
  3. SQLServer清空数据库中所有的表并且ID自动归0
  4. Linux C++ 调试神技--如何将Linux C++ 可执行文件逆向工程到Intel格式汇编
  5. 迟来的Android的Camera开发总结
  6. Linux sync命令的作用
  7. AWS学习之EC2
  8. U3d 手游优化概述
  9. 使用 svn+maven+jenkins(hudson)+Publish Over SSH plugins 构建持续集成及自动远程发布体系(转)
  10. ios7学习之路六(隐藏状态栏 )
  11. nodejs 语法学习(持续更新)
  12. java.sql.SQLException: Access denied for user 'sa'@'localhost' (using password: YES)
  13. Linux 命令整理-ps
  14. JAVA:调用cmd指令(支持多次手工输入)
  15. MySQL 8.0 —— 数据字典
  16. Deferred Shading 延迟着色(翻译)
  17. Eclipse 中 不能创建 Dynamic web project
  18. Ubuntu apt-get彻底卸载软件包
  19. awk.md
  20. 【热更新IK词典】ElasticSearch IK 自动热更新原理与实现

热门文章

  1. FutureTask的用法以及两种常用的使用场景
  2. 博客图片上传picgo工具安装配置github图传使用
  3. json模块:字符串与字典之间的转换--loads,dumps,load,dump
  4. clientdataset 读取excel 如果excel 文件不存在的时候 相应的gird 会不显示数据, 鼠标掠过 gird 格子 才会显示数据。 这是一个bug 哈哈
  5. Numpy 里线性代数函数
  6. JavaScript 变量,语句
  7. 【ABAP系列】SAP WEB GUI的实现,SAP在网页中使用
  8. Matlab入门基础
  9. AWS Cloud Practioner 官方课程笔记 - Part 1
  10. [11期]绕过安全狗、云锁等各大WAF注入,上传深入自动化Bypass攻击