【题目描述】
现在要把m本有顺序的书分给k个人复制(抄写),每一个人的抄写速度都一样,一本书不允许给两个(或以上)的人抄写,分给每一个人的书,必须是连续的,比如不能把第一、第三和第四本书给同一个人抄写。

现在请你设计一种方案,使得复制时间最短。复制时间为抄写页数最多的人用去的时间。

【输入】
第一行两个整数m,k;(k≤m≤500)

第二行m个整数,第i个整数表示第i本书的页数。

【输出】
共k行,每行两个整数,第i行表示第i个人抄写的书的起始编号和终止编号。k行的起始编号应该从小到大排列,如果有多解,则尽可能让前面的人少抄写。

【输入样例】
9 3
1 2 3 4 5 6 7 8 9
【输出样例】
1 5
6 7
8 9
【心得】线性DP的经典模型。课本上说的已经够清楚了,不再赘述。
【AC代码】

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int N=505;
const int INF=0x7fffffff;
int m,k,a[N],d[N],f[N][N];
int pri(int i,int j)
{int t,x;if(j==0) return 0;if(j==1){cout<<1<<" "<<i<<endl;return 0;}t=i;x=a[i];while(x+a[t-1]<=f[k][m]){x=x+a[t-1];t--;}pri(t-1,j-1);cout<<t<<" "<<i<<endl;
}
int main()
{cin>>m>>k;for(int i=1;i<=m;i++){cin>>a[i];d[i]=d[i-1]+a[i];f[1][i]=d[i];} for(int i=2;i<=k;i++) for(int j=1;j<=m;j++) f[i][j]=INF;for(int i=2;i<=k;i++)for(int j=1;j<=m;j++)for(int l=1;l<j;l++)f[i][j]=min(f[i][j],max(f[i-1][l],d[j]-d[l]));pri(m,k);
}

信息学奥赛一本通1278:复制书稿(evd)相关推荐

  1. 信息学奥赛一本通 1278:【例9.22】复制书稿(book) | 洛谷 P1281 书的复制

    [题目链接] ybt 1278:[例9.22]复制书稿(book) 洛谷 P1281 书的复制 [题目考点] 1. 动态规划:线性动规 [解题思路] 该题可以抽象为:将由m个数字构成的序列分成k个子段 ...

  2. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  3. 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划 第一节 动 ...

  4. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  5. 1001:Hello,World! 【信息学奥赛一本通(C++版)在线评测系统】

    「原题」 1001:Hello,World! 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 0 通过数: 0 [题目描述] 编写一个能够输出"Hello,World!& ...

  6. 1000:入门测试题目 【信息学奥赛一本通(C++版)在线评测系统】

    为了更好的阅读体验,建议您移步至我的博客园来阅读此文章. 传送门 「原题」 1000:入门测试题目 时间限制: 1000 ms 内存限制: 32768 KB 提交数: 0 通过数: 0 [题目描述] ...

  7. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”

    董永建(右一)在课堂上. 台海网5月14日讯 据福州晚报报道,长乐一中有一位"传奇"老师--15年来,他辅导的学生在全国高中生信息学奥赛中获金牌3人次.银牌3人次.铜牌5人次:在全 ...

  8. 信息学奥赛一本通 提高篇 第5章 矩阵乘法

    例1 矩阵AXB 信息学奥赛一本通(C++版)在线评测系统 [矩阵乘法]矩阵A×B_Uletay-CSDN博客 矩阵乘法--矩阵A×B_vina的博客-CSDN博客 一本通1641[例 1]矩阵 A× ...

  9. 《信息学奥赛一本通提高篇》第6章 组合数学

    例1 计算系数(NOIP2011提高) 信息学奥赛一本通(C++版)在线评测系统 NOIP2011计算系数_nanhan27的博客-CSDN博客 「NOIP2011」 计算系数 - 组合数_TbYan ...

最新文章

  1. Linux那些事儿 之 戏说USB(25)设备的生命线(八)
  2. 何恺明团队新作!深度学习网络架构新视角:通过相关图表达理解神经网络
  3. 关于自动驾驶, Mobileye 的 14 个最新观点
  4. java可变长字符串_具有可变长度的scala字符串插值
  5. C语言给定数字n阶乘的末尾计算零个数(附完整源码)
  6. 头部玩家指的是什么_MMO等级提升背后:如何设计经验,才能使玩家达成预期时间曲线?...
  7. 【EXLIBRIS】纸版书目整理 -- 大书架 上 【292 种】【327册】
  8. 一、快速开始一个 MyBatis项目(详解)
  9. java heap_javaHeap的组成及GC监控
  10. 0基础自学Python,有哪些避坑经验?
  11. qml入门学习(一):hello world
  12. cobol和java区别,COBOL语法和文法(1)
  13. Linux btrfs之文件系统转换
  14. CentOS7---iptables
  15. 脚本自动安装rkhunter检查rootkit
  16. 西门子V90 PN控制FB284块的个人理解
  17. linux tuxedo查看服务进程数,tuxedo常用命令
  18. 在线图片转文字怎么转?这两种方法简单又实用!
  19. 计算机英特尔显卡在哪找,Win10英特尔显卡设置图标不见了该怎么办?
  20. 7月17日任务 10.23-27

热门文章

  1. 400+汽车经销商怎么在一天完成算奖?
  2. 北京航空航天大学王田苗教授:当前智能机器人发展若干挑战性问题
  3. GlusterFS基本概念
  4. 远控免杀专题(16)-Unicorn免杀(VT免杀率29/56)
  5. java设计一个user类_关于JAVA设计一个用户类
  6. elasticsearch -- win10 elasticsearch.bat闪退
  7. win10安装的es设置自启动时报错Failed starting ‘elasticsearch-service-x64‘ service
  8. 手工改造debian安装U盘
  9. 高斯判别分析GDA的简单python实现
  10. Android 输入法键盘和自定义表情面板