LuoguP1281 書的複製

2021-08-21 11:31:18 字數 984 閱讀 4897

大多數人的錯誤原因:盡可能讓前面的人少抄寫,如果前幾個人可以不寫則不寫,對應的人輸出0 0。

不過,已經修改資料,保證每個人都有活可幹。

// 現在要把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二分答案,從後往前讓當前被處理的人盡量多抄

在0 0上卡了一次 沒有用特判而是頑強的改邊界搞過去了

#include

#include

using

namespace

std;

int a[507];

int m,k;

int ans[507][2];

int toa=0;

void print(int x)

void erfen(int l,int r)

int mid=(l+r)>>1;

int no=0,ans=0;

for(int i=m;i;--i)

else

}if(no)ans++;

if(ans>k)erfen(mid+1,r);

else erfen(l,mid);

return;

}int main()

erfen(0,fff);

return

0;}

洛谷1281 書的複製

洛谷1281 書的複製 題目描述 現在要把m本有順序的書分給k給人複製 抄寫 每乙個人的抄寫速度都一樣,一本書不允許給兩個 或以上 的人抄寫,分給每乙個人的書,必須是連續的,比如不能把第 一 第三 第四本書給同乙個人抄寫。現在請你設計一種方案,使得複製時間最短。複製時間為抄寫頁數最多的人用去的時間。...

洛谷 1281 書的複製

題解 二分答案,貪心check.然後根據二分出來的答案去計算每個人抄寫的部分,注意要讓前面的人少抄寫,所以從後往前貪心即可。1 include2 include3 include4 define ll long long 5 define rg register 6 define n 200010 ...

P1281 書的複製

先說下題意吧,題面給的題意我都看不懂 有 n 本書,每本書有乙個頁數 a i 每個人能寫連續的幾本書,他們寫書的速度可以認為是1頁1天。求讓 k 個人抄完這 n 本書的最短時間。ps k 個人抄書的時間是其中抄的最慢的人用的時間。dp的狀態非常容易想 dp i j 表示前 i 本書,用 j 個人抄的...