Pagini recente » Infoarena Monthly 2014, Clasament Runda 4 | Cod sursa (job #2162394) | Cod sursa (job #3286694) | Cod sursa (job #2259622) | Cod sursa (job #2323997)
#include <fstream>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n,x,dp[50001],st,k,stm,drm,i,maxi;
int main()
{
fin>>n>>k;
fin>>x;
dp[1]=x;
maxi=x;
st=1;
for(i=2;i<=n;i++)
{
fin>>x;
if(x+dp[i-1]<x)
{
if(maxi<dp[i-1] && k<=(i-1-st))
{
stm=st;
drm=i-1;
maxi=dp[i-1];
}
dp[i]=x;
st=i;
if(n==i && dp[i]>maxi)
{
stm=i;
}
}
else
{
dp[i]=dp[i-1]+x;
if(maxi<dp[i] && k<=(i-1-st))
{
drm=i;
stm=st;
maxi=dp[i];
}
}
if(i==n && dp[i]>maxi && k<=(n-st))
{
drm=n;
maxi=dp[i];
}
}
fout<<stm<<' '<<drm<<' '<<maxi;
return 0;
}