题目描述

After several months of rehearsal, the cows are just about ready to put on their annual dance performance; this year they are performing the famous bovine ballet "Cowpelia".

The only aspect of the show that remains to be determined is the size of the stage. A stage of size KKK can support KKK cows dancing simultaneously. The NNN cows in the herd (1≤N≤10,0001 \leq N \leq 10,0001≤N≤10,000) are conveniently numbered 1…N1 \ldots N1…N in the order in which they must appear in the dance. Each cow iii plans to dance for a specific duration of time d(i)d(i)d(i). Initially, cows 1…K1 \ldots K1…K appear on stage and start dancing. When the first of these cows completes her part, she leaves the stage and cow K+1K+1K+1 immediately starts dancing, and so on, so there are always KKK cows dancing (until the end of the show, when we start to run out of cows). The show ends when the last cow completes her dancing part, at time TTT.

Clearly, the larger the value of KKK, the smaller the value of TTT. Since the show cannot last too long, you are given as input an upper bound TmaxT_{max}Tmax​ specifying the largest possible value of TTT. Subject to this constraint, please determine the smallest possible value of KKK.

经过几个月的排练,奶牛们基本准备好展出她们的年度舞蹈表演。今年她们要表演的是著名的奶牛芭蕾——“cowpelia”。

表演唯一有待决定的是舞台的尺寸。一个大小为K的舞台可以支持K头牛同时在舞台上跳舞。在牛群中的N头牛(1<=N<=10,000)按照她们必须出现在舞蹈中的顺序方便地编号为1..N。第i头牛计划跳d[i]的特定持续时间。一开始,第1..K头牛出现在舞台上并开始跳舞。当这些牛中的某一头牛首先完成了她的部分,她会马上离开舞台并且第K+1头牛会出现在舞台上并开始跳舞。所以,舞台上总有K头奶牛在跳舞(直到表演的尾声,奶牛不够的时候)。当最后一头奶牛完成了她的舞蹈部分,表演结束,共花了T个单位时间。

显然,K的值越大,T就越小。由于表演不能拖太长,你得知了指定T的最大可能值的上限T-max。请根据这个约束,确定K的最小值。

输入输出格式

输入格式:

The first line of input contains NNN and TmaxT_{max}Tmax​, where TmaxT_{max}Tmax​ is an integer of value at most 1 million.

The next NNN lines give the durations d(1)…d(N)d(1) \ldots d(N)d(1)…d(N) of the dancing parts for cows 1…N1 \ldots N1…N. Each d(i)d(i)d(i) value is an integer in the range 1…100,0001 \ldots 100,0001…100,000.

It is guaranteed that if K=NK=NK=N, the show will finish in time.

第一行包括N和T-max两个整数(T-max<=1,000,000)。

接下来的N行给出了第1..n头牛跳舞的持续时间d[1]..d[n]。第i行包括一个整数d[i],1<=d[i]<=100,000.

保证K=N时表演会按时完成。

输出格式:

Print out the smallest possible value of K such that the dance performance will take no more than TmaxT_{max}Tmax​ units of time.

输出在表演时间不大于T-max时的K的最小可能值。

输入输出样例

输入样例#1: 复制

5 8
4
7
8
6
4
输出样例#1: 复制

4

____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
这题用二分,查找 k 的值(先确定 k 的值,再判断 k 是否符合要求,符合要求就缩小范围继续查找,不符合就增大范围继续查找)
 #include<iostream>
#include<algorithm>
using namespace std;
int n,tmax,a[],b[],t,l=,r,m;
int f(int x)
{
for(int i=;i<=x;i++)
b[i]=a[i];
sort(b+,b+x+);
for(int i=x+;i<=n;i++)
{
if(b[x]>tmax)
return ;
b[]+=a[i];
for(int j=;j<x;j++)
if(b[j]<=b[j+])
break;
else
t=b[j],b[j]=b[j+],b[j+]=t;
}
return b[x]<=tmax;
}
int main()
{
cin>>n>>tmax;
r=n;
for(int i=;i<=n;i++)
cin>>a[i];
while(l<=r)
{
m=(l+r)/;
if(f(m))
r=m-;
else
l=m+;
}
cout<<l;
return ;
}

洛谷P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈的更多相关文章

  1. [LUOGU] P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈

    https://www.luogu.org/problemnew/show/P3611 二分答案+优先队列 二分O(logn) 判一次正确性O(nlogn) 总体O(nlognlogn) 为了让pri ...

  2. P3611 【[USACO17JAN]Cow Dance Show奶牛舞蹈】

    想了一下还是不发以前做过的水题了,意义也不是很大,现在的话大概只有洛谷黄题以上才会收录了哦~~~ 喵了个咪的题面~~ 洛谷题解dalao不是P党就是优先队列,看的我作为一个新手蒟蒻好慌啊... 这题用 ...

  3. [洛谷P4183][USACO18JAN]Cow at Large P

    题目链接 Bzoj崩了之后在洛谷偶然找到的点分好题! 在暴力的角度来说,如果我们$O(n)$枚举根节点,有没有办法在$O(n)$的时间内找到答案呢? 此时如果用树形$dp$的想法,发现是可做的,因为可 ...

  4. 洛谷 P4183 - [USACO18JAN]Cow at Large P(点分治)

    洛谷题面传送门 点分治 hot tea. 首先考虑什么样的点能够对以 \(u\) 为根的答案产生 \(1\) 的贡献.我们考虑以 \(u\) 为根对整棵树进行一遍 DFS.那么对于一个点 \(v\), ...

  5. 洛谷P3608 [USACO17JAN]Balanced Photo平衡的照片

    P3608 [USACO17JAN]Balanced Photo平衡的照片 题目描述 Farmer John is arranging his NN cows in a line to take a ...

  6. 洛谷P3605 [USACO17JAN] Promotion Counting 晋升者计数 [线段树合并]

    题目传送门 Promotion Counting 题目描述 The cows have once again tried to form a startup company, failing to r ...

  7. 洛谷P3052 [USACO12MAR]摩天大楼里的奶牛 [迭代加深搜索]

    题目传送门 摩天大楼里的奶牛 题目描述 A little known fact about Bessie and friends is that they love stair climbing ra ...

  8. 洛谷P3120 [USACO15FEB]Cow Hopscotch

    题目描述 Just like humans enjoy playing the game of Hopscotch, Farmer John&apos;s cows have invented ...

  9. 洛谷P3052 [USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper

    P3052 [USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper 题目描述 A little known fact about Bessie and friends is ...

随机推荐

  1. object的equals方法与“==”的使用

    官方文档是这么说的:

  2. (转)Memcached用法--参数和命令详解

    Memcached用法--参数和命令详解 1. memcached 参数说明: # memcached -h 1.1 memcached 的参数 常用参数 -p <num> 监听的TCP端 ...

  3. pat1045. Favorite Color Stripe (30)

    1045. Favorite Color Stripe (30) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue ...

  4. POJ 3522 ——Slim Span——————【最小生成树、最大边与最小边最小】

    Slim Span Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 7102   Accepted: 3761 Descrip ...

  5. 获得数据库image图片二进制

    /// <summary>        /// 获得图片二进制        /// </summary>        /// <param name="u ...

  6. c#-day01学习笔记

    C#语言基础 .net之父--------安德斯/海尔斯伯格 .net是一个平台,一个集合,一个环境 .net出现的背景 .net的核心功能:能够在任何的时间,任何的地点,使用任何的设备,访问网络 . ...

  7. Socket网络通信之BIO

    Socket网络通信之BIO 如果要让两台计算机实现通信,需要的条件:ip,port,协议. 目前我们用的最多的就是TCP/IP协议和UDP协议.TCP三次握手,所以比较慢,且安全:UDP速度快,但是 ...

  8. Vue.js - Day1

    什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于We ...

  9. BZOJ4260: Codechef REBXOR (01Tire树)

    题意 题目链接 Sol 首先维护出前缀xor和后缀xor 对每个位置的元素插入到Trie树里面,每次找到和该前缀xor起来最大的元素 正反各做一遍,取最大. 记得要开log倍空间qwq.. #incl ...

  10. 谷歌浏览器web worker出现cannot be accessed from origin 'null'错误

    cannot be accessed from origin 'null'百度翻译是:无法从原点"null"访问 在别的浏览器都可以,而在唯独在谷歌浏览器不行,查找了一些资料原因大 ...