stl - sigbart error! can't find out why -


i trying solve problem in code chef named mchef (http://www.codechef.com/problems/mchef) . continuously getting error solution http://www.codechef.com/viewsolution/7488621. can't figure out error .

you making mistake ! arrays allocated using new freed heap using

delete []array; 

try code!

#include <bits/stdc++.h>  using namespace std;  long long max(long long x,long long y) {     return (x>y)?x:y; }    long long knapsack(unsigned int w, long long wt[], long long val[], unsigned int  n) {    long long i, w;    long long k[n+1][w+1];     // build table k[][] in bottom manner    (i = 0; <= n; i++)    {        (w = 0; w <= w; w++)        {            if (i==0 || w==0)                k[i][w] = 0;            else if (wt[i-1] <= w)                  k[i][w] = max(val[i-1] + k[i-1][w-wt[i-1]],  k[i-1][w]);            else                  k[i][w] = k[i-1][w];        }    }     return k[n][w]; } int main() {     unsigned int t,n,k,m,l,r,m[5000][20],x,temp;     long long *arr,sum=0,*v,i,*s,*c,j;     unsigned int *idx;     vector<int> *l,*r;     set <long long> iset;     cin>>t;     while(t--)     {         cin>>n>>k>>m;         sum=0;         arr= new long long[n];         s= new long long[n];         v= new long long[n];         c=new long long[m];         for(i=0;i<n;i++)         {             cin>>arr[i];             v[i]=-1*arr[i];             sum+=arr[i];             s[i]=1000000;         }          l=new vector<int>[n];         r=new vector<int>[n];     for(i=0;i<m;i++)     {         cin>>l>>r>>temp;         l[l-1].push_back(i);         r[r-1].push_back(i);         c[i]=temp;     }      for(i=0;i<n;i++)     {         for(j=0;j<(int)l[i].size();j++)         {             iset.insert(c[l[i][j]]);             //cout<<1;         }         s[i]=*(iset.begin());         for(j=0;j<(int)r[i].size();j++)         {             iset.erase(c[r[i][j]]); //          cout<<(int)r[i].size()-1<<" ";         }     }     // for(i=0;i<n;i++)     // {     //  cout<<s[i]<<endl;     // }  //reduces knapsack problem        cout<<sum+knapsack(k,s,v,n)<<endl;     delete []arr;     delete []s;     delete []v;     delete []l;     delete []r;     delete []c;      }  }   

Comments