I am not able to print the largest subarray

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;

}