Codevs 抄书问题123
#include<iostream>
#define maxn 105
#define inf 0x7fffff
using namespace std;
int m,k,book[maxn],s[maxn];
struct Anses{int from,to;
};
int dp[maxn][maxn];
int main(){ios::sync_with_stdio(false);cin>>m>>k;for(int i=1;i<=m;i++){cin>>book[i];s[i]=s[i-1]+book[i];dp[i][1]=s[i];}for(int i=2;i<=m;i++){for(int j=2;j<=k&&j<i;j++){int minx=inf;for(int k=i-1;k>=1;k--){int maxx=0;if(i-k<j-1)continue;if(maxx<dp[i-k][j-1]) maxx=dp[i-k][j-1];if(maxx<s[i]-s[i-k]) maxx=s[i]-s[i-k];if(minx>maxx) minx=maxx;}dp[i][j]=minx;}}int ansxx=dp[m][k];Anses ans00[maxn];int i=m,k0=k;while(k0){int j=i-1;while(s[i]-s[j]<ansxx&&j>=0) j--;if(s[i]-s[j]==ansxx){ans00[k0].from=j+1;ans00[k0].to=i;k0--;i=j;}else if(s[i]-s[j+1]<=ansxx){ans00[k0].from=j+2;ans00[k0].to=i;k0--;i=j+1;}}for(int i=1;i<=k;i++)cout<<ans00[i].from<<' '<<ans00[i].to<<endl;return 0;
}
#include<iostream>
#define maxn 1000000+5
using namespace std;
int s[maxn],n,k,begin[maxn],end[maxn];
int main(){ios::sync_with_stdio(false);cin>>n>>k;if(!k)return 0;for(int i=1;i<=n;i++){cin>>s[i];s[i]+=s[i-1];}int lf=1,ri=s[n],ans,mid;for(int i=1;i<=k;i++)begin[i]=end[i]=i;while(lf<ri){drg:;mid=(lf+ri)>>1;int b=n,e=n,cnt=0;while(b>=0){if(s[b]-s[b-1]>mid){lf=mid+1;goto drg;}if(s[e]-s[b-1]<=mid) b--;else{cnt++;e=b;}}cnt++;if(cnt>k) lf=mid+1;else ri=mid;}int b=n,e=n,mark=0;for(int i=k;i>=1;i--){b=e;while(s[e]-s[b-1]<=ri){if(b==i){end[i]=e;for(int i=1;i<=k;i++)cout<<begin[i]<<' '<<end[i]<<endl;return 0;}b--;}end[i]=e;begin[i]=b+1;e=b;}
}
Codevs 抄书问题123相关推荐
- H3CNE考试模拟试题
1. 以下工作于OSI 参考模型数据链路层的设备是__A____.(选择一项或多项) A. 广域网交换机 B. 路由器 C. 中继器 D. 集线器 * A 数据链路层传输的是帧,交换 ...
- CODEVS 3162 抄书问题 (复制书稿)
做这个题,犯了致命错误,wa了几发. 首先要dp,然后必须贪心输出结果,我这个错误以前犯过一次. 输出结果的时候局部最优不一定是全局最优, 因为输出的顺序是倒着来的,而且题目要求是让连续区间中的最大值 ...
- CODEVS 3162 3163 3168 抄书问题1 2 3
题目描述 Description 现在要把M本有顺序的书分给K个人复制(抄写),每一个人的抄写速度都一样,一本书不允许给两个(或以上)的人抄写,分给每一个人的书,必须是连续的,比如不能把第一.第三.第 ...
- 习题:codevs 2822 爱在心中 解题报告
这次的解题报告是有关tarjan算法的一道思维量比较大的题目(真的是原创文章,希望管理员不要再把文章移出首页). 这道题蒟蒻以前做过,但是今天由于要复习tarjan算法,于是就看到codevs分类强联 ...
- 数据结构--栈 codevs 1107 等价表达式
codevs 1107 等价表达式 2005年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 明 ...
- 计算机编程老鸟的心得,java入门123——一个老鸟java学习心得.docx
java入门123--一个老鸟的java学习心得 学习Java心得体会 学习了一学期的Java课程,觉得是该总结自己的心得体会了.开始学习任何一门课(包括java),兴趣最重要.一直觉得自己在学计算机 ...
- 记忆化搜索 codevs 2241 排序二叉树
codevs 2241 排序二叉树 ★ 输入文件:bstree.in 输出文件:bstree.out 简单对比 时间限制:1 s 内存限制:128 MB [问题描述] 一个边长为n的正 ...
- java老鸟123怎么样_java入门123——一个老鸟的java学习心得.doc
java入门123--一个老鸟的java学习心得 java入门123--一个老鸟的java学习心得 篇一:java初学者学习心得 学习Java心得体会 学习了一学期的Java课程,觉得是该总结自己的心 ...
- codevs 3287 货车运输 NOIP2013提高组
题目链接:http://codevs.cn/problem/3287/ 题解: 和bzoj3732一毛一样,只不过是找最大生成树和最小值罢了,具体参见我的bzoj3732的博客 1 #include& ...
最新文章
- 设置 页面 内容并排平均显示
- 基于GIS的视频管理指挥平台
- gnuplot绘图,使用C语言输出
- 探究php底层运行机制
- java for循环排序_java编程问题。用两个for循环来把输入的整数从小到大排序。
- WordPress Terillion Reviews插件HTML注入漏洞
- 旧题新做:从idy的视角看数据结构
- mysql 索引实战
- 解决xx is not in the sudoers file. This incident will be reported.问题
- css三种引入方式以及其优先级的说法
- IDEA商店无法打开的解决方法
- 通过prompt方法增强开放领域问答模型
- VS2008无法正确打开项目/解决方案
- [CF55D]Beautiful Number 题解
- Looking for pthread_create - not found
- 如何根据iframe内嵌页面调整iframe高宽续篇
- C++(数据结构与算法):16---特殊矩阵的实现(对角矩阵、三对角矩阵、下三角矩阵、上三角矩阵、对称矩阵)
- 获取计算机用户名 方法
- iPhone6分辨率与适配
- matlab向量的简单随机抽样,matlab随机抽样