本文主要是介绍信道分布(80%用例)C卷(JavaPythonC++Node.jsC语言),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
算法工程师小明面对着这样一个问题,需要将通信用的信道分配给尽量多的用户:
信道的条件及分配规则如下:
1) 所有信道都有属性:”阶”。阶为r的信道的容量为2^r比特;
2) 所有用户需要传输的数据量都一样:D比特;
3) 一个用户可以分配多个信道,但每个信道只能分配给一个用户;
4) 只有当分配给一个用户的所有信道的容量和>=D,用户才能传输数据;
给出一组信道资源,最多可以为多少用户传输数据?
输入描述:
第一行,一个数字R。R为最大阶数。
0<=R<20
第二行,R+1个数字,用空格隔开。
代表每种信道的数量Ni。按照阶的值从小到大排列。
0<=i<=R, 0<=Ni<1000.
第三行,一个数字D。
D为单个用户需要传输的数据量。
0<D<1000000
输出描述:
一个数字,代表最多可以供多少用户传输数据。
示例1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
5 10 5 0 1 3 2 30
输出
4
说明
最大阶数为5.
信道阶数:0 1 2 3 4 5
信道容量:1 2
这篇关于信道分布(80%用例)C卷(JavaPythonC++Node.jsC语言)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!