Pagini recente » Diferente pentru utilizator/stargold2 intre reviziile 275 si 118 | Diferente pentru fmi-no-stress-9/solutii intre reviziile 58 si 63 | Monitorul de evaluare | Monitorul de evaluare | Cod sursa (job #431043)
Cod sursa(job #431043)
#include <stdio.h>
FILE *f=fopen("bilute.in","r"),*g=fopen("bilute.out","w");
int l[30001],c[30001],n,i,j;
long long s,sm=100000000000LL,st[30001],sp[30001],t[30001],p[30001],po;
int main(void)
{
fscanf(f,"%d",&n);
for (i=1;i<=n;i++)
{
fscanf(f,"%d%d",&c[i],&l[i]);
}
for (i=1;i<=n;i++)
st[i]=st[i-1]+c[i];
for (i=n;i>=1;i--)
sp[i]=sp[i+1]+c[i];
for (i=1;i<=n;i++)
t[i]=t[i-1]+c[i-1]*l[i-1]+st[i-1];
for (i=n;i>=1;i--)
p[i]=p[i+1]+c[i+1]*l[i+1]+sp[i+1];
for (i=1;i<=n;i++)
if (t[i]+p[i]<sm)
{
sm=t[i]+p[i];
po=i;
}
fprintf(g,"%lld %lld",po,sm);
fclose(g);
return 0;
}