博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 5884 Sort 队列+多叉哈夫曼树
阅读量:5314 次
发布时间:2019-06-14

本文共 1683 字,大约阅读时间需要 5 分钟。

Sort

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Problem Description
Recently, Bob has just learnt a naive sorting algorithm: merge sort. Now, Bob receives a task from Alice.
Alice will give Bob 
N sorted sequences, and the i-th sequence includes ai elements. Bob need to merge all of these sequences. He can write a program, which can merge no more than k sequences in one time. The cost of a merging operation is the sum of the length of these sequences. Unfortunately, Alice allows this program to use no more than T cost. So Bob wants to know the smallest k to make the program complete in time.
 

 

Input
The first line of input contains an integer 
t0, the number of test cases. t0 test cases follow.
For each test case, the first line consists two integers N (2N100000) and T (Ni=1ai<T<231).
In the next line there are N integers a1,a2,a3,...,aN(i,0ai1000).
 

 

Output
For each test cases, output the smallest 
k.
 

 

Sample Input
1 5 25 1 2 3 4 5
 

 

Sample Output
3
 

 

Source
 

由于多叉哈夫曼最后可能不能得到k个再合并成一个,可以先将多的部分取余,或者加0;

#include
using namespace std;#define ll long long#define pi (4*atan(1.0))const int N=1e5+10,M=1e6+10,inf=1e9+10,mod=1e9+7;const ll INF=1e18+10;ll n,m;ll a[N];int check(int x){ queue
q; queue
d; int yy=(n-1)%(x-1); if(yy!=0) { for(int i=0;i
m) return 0; return 1;}int main(){ int T; scanf("%d",&T); while(T--) { scanf("%lld%lld",&n,&m); for(ll i=1;i<=n;i++) scanf("%lld",&a[i]); sort(a+1,a+n+1); int st=2,en=n; while(st

 

转载于:https://www.cnblogs.com/jhz033/p/5879452.html

你可能感兴趣的文章
java基础(一):我对java的三个环境变量的简单理解和配置
查看>>
arcgis api 4.x for js 结合 Echarts4 实现散点图效果(附源码下载)
查看>>
YTU 2625: B 构造函数和析构函数
查看>>
apache自带压力测试工具ab的使用及解析
查看>>
C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码
查看>>
jenkins搭建
查看>>
C#中使用Split分隔字符串的技巧
查看>>
eclipse的调试方法的简单介绍
查看>>
加固linux
查看>>
IPSP问题
查看>>
10.17动手动脑
查看>>
WPF中Image显示本地图片
查看>>
Windows Phone 7你不知道的8件事
查看>>
实用拜占庭容错算法PBFT
查看>>
java的二叉树树一层层输出,Java构造二叉树、树形结构先序遍历、中序遍历、后序遍历...
查看>>
php仿阿里巴巴,php实现的仿阿里巴巴实现同类产品翻页
查看>>
Node 中异常收集与监控
查看>>
Excel-基本操作
查看>>
面对问题,如何去分析?(分析套路)
查看>>
Excel-逻辑函数
查看>>