Language: C++

#include <bits/stdc++.h>
using namespace std;

#define mp make_pair
#define pb push_back

#define int int64_t

const int MOD = 1e9+7;
 
int K[3001][3001]; 
int knapSack(int W, int wt[], int val[], int n, int dnt) 
{ 
   int i, w; 
  
   // Build table K[][] in bottom up manner 
   for (i = max(dnt-1,0ll); i <= n; i++) 
   { 
       for (w = 0; w <= W; w++) 
       { 
       		
           if (i==0 || w==0) 
               K[i][w] = 0; 
           else if(i-1==dnt)
       		{
       			K[i][w]=K[i-1][w];
       			continue;
       		}
           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]; 
}  


int32_t main()
{
	ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n,t;
    cin>>n>>t;
    int val[n];
    int wt[n];

    for(int i=0;i<n;i++)
    {
    	cin>>wt[i]>>val[i];
    }

    int W = 50;  
    int ans=0;
    for(int i=0;i<n;i++)
    {
    	//cout<<knapSack(t-1, wt, val, n, i)<<"\n"; 
       	ans=max(ans,knapSack(t-1, wt, val, n, i)+val[i]);
    }
    cout<<ans<<"\n";

	return 0;
}

Compiler output:
a.cc: In function 'int64_t knapSack(int64_t, int64_t*, int64_t*, int64_t, int64_t)':
a.cc:17:16: error: no matching function for call to 'max(int64_t, long long int)'
   17 |    for (i = max(dnt-1,0ll); i <= n; i++)
      |             ~~~^~~~~~~~~~~
In file included from /usr/include/c++/14/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:51,
                 from a.cc:1:
/usr/include/c++/14/bits/stl_algobase.h:257:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)'
  257 |     max(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/14/bits/stl_algobase.h:257:5: note:   template argument deduction/substitution failed:
a.cc:17:16: note:   deduced conflicting types for parameter 'const _Tp' ('long int' and 'long long int')
   17 |    for (i = max(dnt-1,0ll); i <= n; i++)
      |             ~~~^~~~~~~~~~~
/usr/include/c++/14/bits/stl_algobase.h:303:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
  303 |     max(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/14/bits/stl_algobase.h:303:5: note:   candidate expects 3 arguments, 2 provided
In file included from /usr/include/c++/14/algorithm:61:
/usr/include/c++/14/bits/stl_algo.h:5706:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(initializer_list<_Tp>)'
 5706 |     max(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/14/bits/stl_algo.h:5706:5: note:   candidate expects 1 argument, 2 provided
/usr/include/c++/14/bits/stl_algo.h:5716:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(initializer_list<_Tp>, _Compare)'
 5716 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/14/bits/stl_algo.h:5716:5: note:   template argument deduction/substitution failed:
a.cc:17:16: note:   mismatched types 'std::initializer_list<_Tp>' and 'long int'
   17 |    for (i = max(dnt-1,0ll); i <= n; i++)
      |             ~~~^~~~~~~~~~~