Language: C++

#include <bits/stdc++.h>
using namespace std;
 
#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define endl "\n"
#define int long long

const int N=1e5+5;

int n, k, best=0, ans=0;
int t[N], d[N], f[N];
set<int> types;
multiset<pair<int, int> > removable;
pair<int, int> a[N];

int32_t main()
{
	IOS;
	cin>>n>>k;
	for(int i=1;i<=n;i++)
	{
		cin>>t[i]>>d[i];
		a[i].first=d[i];
		a[i].second=t[i];
	}
	sort(a+1, a+n+1);
	reverse(a+1, a+n+1);
	for(int i=1;i<=k;i++)
	{
		removable.insert({d[i], t[i]});
		f[t[i]]++;
		ans+=d[i];
		types.insert(t[i]);
	}
	best=ans + types.size()*types.size();
	for(int i=k+1;i<=n;i++)
	{
		while(removable.size())
		{
			auto it=*removable.begin();
			if(f[it.second]==1)
				removable.erase(removable.find(it));
			else
			{
				ans-=it.first;
				f[it.second]--;
				break;
			}
		}
		if(!removable.size())
			break;
		ans+=a[i].first;
		f[a[i].second]++;
		types.insert(a[i].second);
		best=max(best, ans + (int)types.size()*types.size());
	}
	cout<<best;
	return 0;
}


Compiler output:
a.cc: In function 'int32_t main()':
a.cc:55:25: error: no matching function for call to 'max(long long int&, long long unsigned int)'
   55 |                 best=max(best, ans + (int)types.size()*types.size());
      |                      ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:55:25: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int')
   55 |                 best=max(best, ans + (int)types.size()*types.size());
      |                      ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/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:55:25: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   55 |                 best=max(best, ans + (int)types.size()*types.size());
      |                      ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~