zzuli2159 布线 贪心
来源:互联网 发布:苹果平板淘宝开店在哪 编辑:程序博客网 时间:2024/06/05 04:29
2159: 布线
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 201 Solved: 31
SubmitStatusWeb Board
Description
DML准备新建一个网吧,但是之前要进行网络搭建。DML的网吧里面有 N 台电脑和 M 个分线器,但是整个网吧只有一个网线出口。分线器的作用是将一根网线转换成多根网线。DML也知道每个分线器输出的最大网线根数S,那么至少需要使用多少个分线器才能使得每台电脑都连上网络?
Input
本题为多实例测试
第一行输入 n,m(0 <= n,m <= 100)
第二行输入 每个分线器输出的最大网线根数S(0≤S≤100)。
Output
输出最少需要的分线器数量。若不能使得所有服务器都有网线可用,输出“Impossible”(不带引号)。
Sample Input
10 4
2 7 2 3
Sample Output
3
HINT
不一定要将分线器输出的每根线都用上
题解:
第一眼的感觉就是贪心,把分线器网线根数从大到小排序,n依次减去,如果n>0,说明服务器接不完,就需要留一个口接下一个分线器,即n++
其次要注意的是n==0和n==1时,输出0,因为网吧自带一个接口
#include<iostream>#include<algorithm>using namespace std;int a[105];int main(){int aim,n;while(cin>>aim>>n){for(int i=0;i<n;i++){cin>>a[i];}if(aim==0||aim==1){cout<<0<<endl;continue;}sort(a,a+n,greater<int>());int cnt=0;for(int i=0;i<n;i++){aim-=a[i];cnt++;if(aim<=0){break;}else{aim++;//cout<<aim<<endl;}}if(aim>0)cout<<"Impossible"<<endl;else cout<<cnt<<endl;}return 0;}
阅读全文
0 0
- zzuli2159 布线 贪心
- 布线
- PCB布线
- 合理布线
- arm布线
- PCB布线
- PCB布线
- USB 布线
- 布线问题
- 完美布线
- DM9000布线
- PCB布线
- 电路布线
- 布线技巧
- 布线问题
- 布线问题
- 布线问题
- 布线问题
- ImportError: libmkldnn.so.0: cannot open shared object file: No such file or directory
- 媒体
- 04 hadoop-hive
- Linux下静态库_库的基本概念;如何生成静态库动态库;nm查看库中包含那些函数、ar生成静态库,查看库中包含那些.o文件、ldd查看程序依赖的.so文件;gcc/g++与库相关的参数-L,-l,-f
- 编译期成员函数检查
- zzuli2159 布线 贪心
- 从R-CNN到Faster-RCNN(上)
- 数据库基础
- 14_CXF发布REST服务
- 如何配置python的运行环境?
- Ubuntu14.04上配置caffe
- nodejs浏览器跨域问题解决
- 学习SpringMVC——配置文件和第一个SpringMVC应用
- 异常