Pagini recente » Cod sursa (job #1746131) | Cod sursa (job #3032955) | Cod sursa (job #2913357) | Cod sursa (job #1044994) | Cod sursa (job #895752)
Cod sursa(job #895752)
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int n,w,we[5000],wc[5000],i,j,m1[5000][5000],m2[5000][5000],nr,min1=9999;
int main()
{
f>>n>>w;
nr=n;
for(i=1;i<=n;i++)
f>>we[i]>>wc[i];
for(i=1;i<=n;i++)
{
m1[n][i]=we[i];
m1[i][n]=we[i];
m2[n][i]=wc[i];
m2[i][n]=wc[i];
}
for(i=n-1;i>=1;i--)
{
for(j=i;j>=1;j--)
{
m1[i][j]=we[nr]+m1[i+1][j];
m2[i][j]=wc[nr]+m2[i+1][j];
}
nr--;
}
nr=n-1;
for(i=n-1;i>=1;i--)
{
for(j=n-2;i>=2;i--)
{
m1[j][i]=we[nr]+m1[j][i+1];
m2[j][i]=wc[nr]+m2[j][i+1];
}
nr--;
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(m1[i][j]>=w)
if(m2[i][j]<min1)
min1=m2[i][j];
g<<min1;
return 0;
}