01分数规划问题

小咪买东西

https://ac.nowcoder.com/acm/problem/14662

include

include

using namespace std;
int main(){
int T,c[10005],v[10005];
int p[10005];
cin>>T;
while(T--){
int n,k;
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>c[i]>>v[i];
}
int l=1,r=10000,t=0;
while(l<=r){
int mid=(l+r)/2;
long long sum=0;
for(int i=0;i<n;i++){
p[i]=v[i]-c[i]*mid;
}
sort(p,p+n,greater<int>());
for(int i=0;i<k;i++){
sum+=p[i];
}
if(sum>=0){
if(mid>t)
t=mid;
l=mid+1;
}else{
r=mid-1;
}
}
cout<<t<<endl;
}
return 0;
}</int>

全部评论

相关推荐

点赞 评论 收藏
分享
Java抽象带篮子:走java的话就做项目背八股刷算法找实习啊,入门可以看看我的苍穹外卖话术,里面还写了怎么描述项目,还为了提高含金量额外增加了很多技术亮点呢。另外我这边还有个7000多字的轮子项目话术,可以狠狠的速成,需要的似我。详细的话术能帮你快速速成,这样你就有了很多试错的时间。具体背什么八股我都帮你整理好了,可以去看看我的八股专栏,这个比较详细,如果你觉得内容有点多记忆负担比较大的话,我还在更新最常问八股整理贴,是不是很贴心?[偷笑R]
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务