codevs 3278 最小m 段和问题
给定 n 个整数(不一定是正整数)组成的序列,现在要求将序列分割为 m 段,每段子序列中的数在原序列 中连续排列。如何分割才能使这 m 段子序列的和的最大值达到最小?
文件的第 1 行中有 2 个正整数 n 和 m。 正整数 n 是序列 的长度;正整数 m 是分割的断数。 接下来的一行中有 n 个整数。
文件的第 1 行中的数是计算出 的 m 段子序列的和的最大值的最小值。
1 1
10
10
N<=1000,M<=N
二分做法 点击传送
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio> using namespace std; int ans,l,r,n,m,i,a[+];
int judge(int now)
{
int tot=,x=;
for(i=;i<n;++i)
{
if(a[i]>now) return ;
if(a[i]+x<=now)
x+=a[i];
else
{
x=a[i];
tot++;
if(tot>=m) return ;
}
}
return ;
}
int main()
{
cin>>n>>m;
for(i=;i<n;++i)
{
cin>>a[i];
r+=a[i];
}
while(l<=r)
{
int mid=(l+r)>>;
if(judge(mid))
{
ans=mid;
r=mid-;
}
else l=mid+;
}
cout<<ans;
}
codevs 3278 最小m 段和问题的更多相关文章
- 141.最小m 段和问题--划分性DP(特殊数据)
3278 最小m 段和问题 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 给定 n 个整数(不一定是正整 ...
- 详解数组分段和最大值最小问题(最小m段和问题)
数组分段和最大值最小问题(最小m段和问题) 问题描述 给定n个整数组成的序列,现在要求将序列分割为m段,每段子序列中的数在原序列中连续排列.如何分割才能使这m段子序列的和的最大值达到最小? 清洁工:假 ...
- CODEVS 1245 最小的N个和 堆+排序
原题链接 http://codevs.cn/problem/1245/ 题目描述 Description 有两个长度为 N 的序列 A 和 B,在 A 和 B 中各任取一个数可以得到 N^2 个和,求 ...
- codevs 1245 最小的N个和
1245 最小的N个和 http://codevs.cn/problem/1245/ 题目描述 Description 有两个长度为 N 的序列 A 和 B,在 A 和 B 中各任取一个数可以得到 N ...
- 算法 - 最小m段和问题
题目分析 给定n个整数组成的序列,要求将序列分割为m段,每段子序列中的数在原序列中连续排列,求使得子段和的最大值达到最小的分割方法 解题方法 状态转移方程 State[i][j]表示前i个数据分成j段 ...
- codevs 2796 最小完全图
2796 最小完全图 http://codevs.cn/problem/2796/ 时间限制: 1 s 空间限制: 128000 KB 题目描述 Description 若一个图的每一对不 ...
- Codevs 1904 最小路径覆盖问题
1904 最小路径覆盖问题 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 大师 Master 传送门 题目描述 Description 给定有向图G=(V,E).设P 是G 的一个 ...
- 【动态规划】【记忆化搜索】CODEVS 3415 最小和 CodeVS原创
f(l,r,i)表示第i段截第l位到第r位时,当前已经得到的价格最小值,可以很显然地发现,这个是没有后效性的,因为对之后截得的段都不造成影响. 注意水彩笔数=1的特判. 递归枚举当前段的r求解(∵l是 ...
- 洛谷 P1121 环状最大两段子段和 解题报告
P1121 环状最大两段子段和 题目描述 给出一段环状序列,即认为\(A_1\)和\(A_N\)是相邻的,选出其中连续不重叠且非空的两段使得这两段和最大. 输入输出格式 输入格式: 第一行是一个正整数 ...
随机推荐
- themeforest 免费模板
http://www.im286.com/thread-9550365-1-1.html 官网:http://themeforest.net/item/elena-responsive-email-t ...
- TwinCAT3提示找不到TcPch.h错误解决
我使用git对TwinCAT3的工程进行版本控制,但是别的电脑clone的仓库会提示找不到TcPch.h的错误,无法编译. 明明文件就在那里,就是不让编译... 解决办法更奇葩,只需要把工程文件压缩, ...
- Subsets Forming Perfect Squares
题意: 给出n个数字,选出若干个数字,使得这些数字的乘积是一个完全平方数,问有多少种选法. 解法: 考虑异或方程组,$x_i$表示第i个数字是否选, 注意到只要保证结果中各个质因数都出现偶数次就可保证 ...
- Linux编写Shell脚本入门
一. 一般编写shell需要分3个步骤 1. 新建一个脚本文件,并编写程序 vi hello.sh #!/bin/bash #注释 #输出 printf '%s\n' "Hello Worl ...
- linux的grep命令参数全拼详解
今天为了查找文件中某段字符,找了好久,最后成功使用指令: find . -name "*.cpp" |xargs grep -in “get_itemInfo” | grep -v ...
- JSON 下 -- jansson 示例
JSON 下 —— jansson 示例 参考网址: jansson 库的下载: http://www.digip.org/jansson/ 安装jansson 步骤: http://blog.csd ...
- Windows下启动停止Oracle11g服务-为解决系统变慢而生
我们拿Oracle 11g作为例子. 首先在“开始=〉运行”中输入“services.msc”,按回车,进入“服务”控制台, 将 Oracle ORCL VSS Writer Service.Orac ...
- [OpenGL]配置GLFW(超详细)
注:本文可转载,转载请著名出处:http://www.cnblogs.com/collectionne/p/6937644.html.本文还会修改,如果不在博客园(cnblogs)发现本文,建议访问上 ...
- IT兄弟连 JavaWeb教程 JSP动作指令
JSP动作指令语法 JSP动作指令语法格式如下: <jsp:动作名 属性名1="属性值1" 属性名2="属性值2" ... %> JSP具体动作指令 ...
- android studio ffmpeg简单使用 (cmake)
编译ffmpeg android studio 新建项目,勾选上 将编译好的libffmpeg.so库扔到src/main/jniLibs/armeabi下(主要这里我只编译了arm的ffmpeg的库 ...