#include <stdio.h>
#include <algorithm>
using namespace std;
int cas,tim,n,x,y,a[60],b[60],f[210];
 int main() {
scanf("%d",&cas);
 for(int tim=0;tim<cas;) {
scanf("%d%d%d",&n,&x,&y);
for(int i=1;i<=n;i++)//下标重1开始
scanf("%d%d",&a[i],&b[i]);
int l=0,r=a[1]*x+b[1]*y,m;
 while(l<=r) {
m=(l+r)>>1;
for(int i=1;i<=x;i++)f[i]=-999999999;
f[0]=0;
for(int i=1;i<=n;i++)
 for(int v=x;v>=0;v--) {
f[v]+=m/b[i];//新入工人要更新
for(int j=0;j<v;j++) if (m>=(v-j)*a[i])
f[v]=max(f[v],f[j]+(m-a[i]*(v-j))/b[i]);
}
if(f[x]>=y)r=m-1;//最左逼近
else l=m+1;
}
printf("Case %d: %d\n",++tim,l);
}
return 0;
}

|
|
CALENDER
| 日 | 一 | 二 | 三 | 四 | 五 | 六 |
---|
25 | 26 | 27 | 28 | 29 | 30 | 31 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 1 | 2 | 3 | 4 |
|
常用链接
留言簿
随笔分类
随笔档案
搜索
最新随笔
最新评论

Powered By: 博客园 模板提供:沪江博客
|