Cod sursa(job #1140047)

Utilizator binicBinica Nicolae binic Data 11 martie 2014 18:00:18
Problema PScPld Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<stdio.h>
long long n,i,q,x,m,j,r,ld,ls,ma,b[101],t[101];
int main ()
{
    freopen("spargere.in","r",stdin);
    freopen("spargere.out","w",stdout);
    scanf("%lld",&n);
    for(i=1;i<=n;i++)
        scanf("%lld %lld",&b[i],&t[i]);
    scanf("%lld",&q);
    for(i=1;i<=q;i++)
    {
        scanf("%lld",&x);
        ls=0;
        ld=1000000000000LL;
        ma=0;
        while(ls<=ld)
        {
            m=(ls+ld)/2;
            r=0;
            for(j=1;j<=n;j++)
                r+=1LL*(m/t[j]+1)*b[j];
            if(r>=x)
            {
                ma=m;
                ld=m-1;
            }
            else ls=m+1;
        }
        printf("%lld\n",ma);
    }
    return 0;
}