博客
关于我
2019ICPC 沈阳重现 L-Flowers(二分)
阅读量:390 次
发布时间:2019-03-05

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

7-7 L-Flowers

Recently Jack becomes much more romantic. He would like to prepare several bunches of flowers.

Each bunch of flowers must have exactly M flowers. As Jack does not want to be boring, he hopes that flowers in the same bunch are all different species. Now there are N species of flowers in the flower shop, and the number of the i-th species of flower is a​i. Now Jack would like to know how many bunches of flowers he can prepare at most.

(Flowers are used to propose.)

Sample Input
1
5 3
1 1 1 2 1

Sample Output

2
思路:二分答案,看一下共x朵花,每朵花m个不同的花组成能不能满足就行了。

#include
using namespace std;typedef long long ll;const int maxn=3e5+1; int T,n;ll k,a[maxn];bool check(ll x){ ll sum=0; for(int i=1;i<=n;++i) sum+=min(a[i],x); return sum>=x*k;}int main(){ scanf("%d",&T); while(T--) { ll sum=0; scanf("%d %lld",&n,&k); for(int i=1;i<=n;++i) scanf("%lld",&a[i]),sum+=a[i]; ll l=0,r=sum,mid; while(l<=r) { mid=(l+r)>>1; if(check(mid)) l=mid+1; else r=mid-1; } printf("%lld\n",r); } }

转载地址:http://thewz.baihongyu.com/

你可能感兴趣的文章
MySQL学习-子查询及limit分页
查看>>
MySQL学习-排序与分组函数
查看>>
MySQL学习-连接查询
查看>>
Mysql学习总结(15)——Mysql错误码大全
查看>>
Mysql学习总结(19)——Mysql无法创建外键的原因
查看>>
Mysql学习总结(21)——MySQL数据库常见面试题
查看>>
Mysql学习总结(22)——Mysql数据库中制作千万级测试表
查看>>
Mysql学习总结(23)——MySQL统计函数和分组查询
查看>>
Mysql学习总结(24)——MySQL多表查询合并结果和内连接查询
查看>>
Mysql学习总结(25)——MySQL外连接查询
查看>>
Mysql学习总结(26)——MySQL子查询
查看>>
Mysql学习总结(37)——Mysql Limit 分页查询优化
查看>>
Mysql学习总结(38)——21条MySql性能优化经验
查看>>
Mysql学习总结(45)——Mysql视图和事务
查看>>
Mysql学习总结(58)——深入理解Mysql的四种隔离级别
查看>>
Mysql学习总结(59)——数据库分库分表策略总结
查看>>
Mysql学习总结(60)——并发量大、数据量大的互联网业务数据库设计规范总结
查看>>
Mysql学习总结(79)——MySQL常用函数总结
查看>>
Mysql学习总结(80)——统计数据库的总记录数和库中各个表的数据量
查看>>
Mysql学习总结(82)——MySQL逻辑删除与数据库唯一性约束如何解决?
查看>>