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

序列划分-使其最大值最小化

问题:给指定的序列划分为3份,取每份的最大值,再从3份最大值取出最大的max。如何划分,可以使max最小?
输入:1,2,3,4,5
划分:1,2,3 | 4 |5
最大值为6


思路:两个指针p1,p2,p1索引∈[0,len-2),p2索引∈[p1+1,len-1),最后一份索引范围[p2+1,len-1]


实现:


Array.prototype.sum = function(i,j){
i = i == undefined ? 0 : i;
j = j == undefined ? 0 : j;
var s = 0;
for(var k = i;k <=j ;k++){
s+=this[k];
}
return s;
}




function f(arr){


var result = {val:undefined,p1:"",p2:""};


for(var p1 = 0;p1<arr.length-2;p1++){
var s1 = arr.sum(0,p1);
for(var p2 = p1+1;p2<arr.length-1;p2++){
var s2 = arr.sum(p1+1,p2);
var s3 = arr.sum(p2+1,arr.length-1);


var min = Math.max(Math.max(s1,s2),s3);
if(p1==2){
console.log("min : "+min +",p1:"+p1+",p2:"+p2+",s2:"+s2+",s3:"+s3);
}


if(!result.val || result.val > min){result.val = min;result.p1 = p1;result.p2=p2;}


}
}
return result;
}


console.log(f(new Array(1,2,3,4,5)));


相关文章:

  • 自定义异常类的使用...
  • 使用欧几里得定理求最大公约数和最小公倍数
  • 移动设备管理(MDM)与OMA(OTA)DM协议向导(二)——WAP协议(2)
  • 斐波那契数列算法的快速版本
  • 3月OpenParty春晴活动纪实——“如何成为一个高效的程序员”
  • 使用stein 算法计算 最大公约数和最小公倍数
  • 算法练习--多项式加法
  • 高性价比才是王道 三大流行趋势机巅峰对垒
  • mvc 中Range中max和min值晚绑定
  • 网上购物,哪家平台更贴心?——三大网购平台大比拼
  • mvc中使用remote属性来做ajax验证
  • 跨过硬盘瓶颈 体验极速运算——在内存里装系统
  • javascript 获取选中text
  • Windows 7中写字板也能浏览*.docx文档
  • 使用栈结构完成四则运算
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • CSS实用技巧
  • express.js的介绍及使用
  • javascript数组去重/查找/插入/删除
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • Mysql5.6主从复制
  • nodejs调试方法
  • opencv python Meanshift 和 Camshift
  • vue-loader 源码解析系列之 selector
  • 后端_MYSQL
  • 数组大概知多少
  • 网络应用优化——时延与带宽
  • 微服务框架lagom
  • 以太坊客户端Geth命令参数详解
  • 阿里云移动端播放器高级功能介绍
  • 移动端高清、多屏适配方案
  • 昨天1024程序员节,我故意写了个死循环~
  • ​力扣解法汇总946-验证栈序列
  • ​业务双活的数据切换思路设计(下)
  • (+4)2.2UML建模图
  • (0)Nginx 功能特性
  • (Python) SOAP Web Service (HTTP POST)
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (六)Hibernate的二级缓存
  • (转)关于多人操作数据的处理策略
  • (转)树状数组
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .net wcf memory gates checking failed
  • .NET 命令行参数包含应用程序路径吗?
  • .NET分布式缓存Memcached从入门到实战
  • .NET基础篇——反射的奥妙
  • [ 常用工具篇 ] POC-bomber 漏洞检测工具安装及使用详解
  • [2016.7 test.5] T1
  • [android]-如何在向服务器发送request时附加已保存的cookie数据
  • [Asp.net MVC]Asp.net MVC5系列——Razor语法
  • [boost]使用boost::function和boost::bind产生的down机一例
  • [C/C++]数据结构----顺序表的实现(增删查改)
  • [CC2642R1][VSCODE+Embedded IDE+IAR Build+Cortex-Debug] TI CC2642R1基于VsCode的开发环境