This code is printing the largest subarray sum, but its not printing that subarray which contain the largest subarray.
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;cin>>n;
int Csum=0,Msum=0;
int i,j,k,a[1000];
int left=-1,right=-1;
for(i=0;i<n;i++)
{
cin>>a[i];
}
//generate subarray
for(i=0;i<n;i++)
{
for(j=i;j<n;j++)
{
Csum=0;
for(k=i;k<=j;k++)
{
Csum+=a[k];
left=i;
right=j;
}
if(Csum>Msum)
Msum=Csum;
}
}
cout<<"The maximum subarray sum is:"<<Msum<<endl;
for(k=left;k<=right;k++)
{
cout<<a[k]<<",";
}
return 0;
}