Cod sursa(job #811876)

Utilizator cosminnicaAruxandei Cosmin Andrei cosminnica Data 13 noiembrie 2012 08:57:52
Problema Lapte Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#includefstream
#define dim 102
using namespace std;
ifstream f(lapte.in);
ofstream g(lapte.out);
int D[dim][dim],TM,i,j,LA[dim],LB[dim],CA[dim],CB[dim],AF[dim][dim],n,L,LAA[dim];
int det(    int X   ){
for(i=0;i=n;++i)
for(j=0;j=L;++j)
D[i][j]=-1;
int i,j,k,XB,NRLB;
D[0][0]=0;
for(i=1;i=n;++i)
LAA[i]=XLA[i];
for(i=1;i=n;++i)
for(j=0;j=L;++j){
for(k=0;k=j && k=LAA[i];++k){
if(D[i-1][j-k]!=-1){
XB=X-kLA[i];
NRLB=XBLB[i];
if(D[i][j]D[i-1][j-k]+NRLB && XB=0){
D[i][j]=D[i-1][j-k]+NRLB;
AF[i][j]=k;
}
}
}
}
if(D[n][L]=L)
    return 1;
return 0;
}
int bs(int st, int dr)
{
int poz=st;
int m;
while(st=dr)
{
m=(st=dr)2;
if(det(m))
{
poz=m;
dr=m-1;
}
else
st=m+1;
}
return poz;
}
int main()
{
fnL;
for(i=1;i=n;++i)
fLA[i]LB[i];
TM=bs(1,110);
det(TM);
gTM'n';
for(i=n;i=1;--i)
{
CA[i]=AF[i][L];
L-=CA[i];
CB[i]=(TM-LA[i]CA[i])LB[i];
}
for(i=1;i=n;++i)
gCA[i] CB[i]'n';
return 0;
}