Pagini recente » Cod sursa (job #2773077) | Cod sursa (job #255926) | Cod sursa (job #2861995) | Cod sursa (job #2908760) | Cod sursa (job #702873)
Cod sursa(job #702873)
#include<cstdio>
using namespace std;
FILE *fin=fopen("minim.in","r");
FILE *fout=fopen("minim.out","w");
int i,j,n,o[1010],v[1010],ok,da[1010],ok2,pozs,pozf,s[1010],min1;
int main()
{fscanf(fin,"%d",&n);
for(i=1;i<=n;++i)
fscanf(fin,"%d",&v[i]);
while(ok==0)
{min1=0;pozs=-1;pozf=-1;ok2=0;
for(i=1;i<=n;++i)
{s[i]=0;
if(da[i]==0)
{if(v[i]<=v[i]+s[i-1])
{s[i]=v[i];
o[i]=i;
}
else
{s[i]=v[i]+s[i-1];
o[i]=o[i-1];
}
if((s[i]<min1)||(pozs==-1))
{min1=s[i];
pozs=o[i];
pozf=i;
}
ok2=1;
}
}
if(ok2==1)
fprintf(fout,"%d %d %d\n",min1,pozs,pozf);
for(i=pozs;i<=pozf;++i)
da[i]=1;
if(ok2==0)
ok=1;
}
return 0;
}