Language: C++

// みなさん私はカーティキー・シャルマです。LNMIITで勉強しています。私は2年目で、コロナパンデミックが発
// 生しています。世界は終わりそうだ。だから私はそれを最大限に生きたいと思っています。それはつまり、コー
// ドを最大限に意味しているのです。私の好きなアニメは「キメツノヤイバ」で、私の一番の男の子はゼニツで、
// 私の一番の女の子はネズコです。私の好きな呼吸スタイルは息吹です。私の最高の悪魔の血の芸術は、
// ククシボによって使用される月の息です。ムーザンは亡くなり、今ではタンジローがポップの新しい魔王です。
#include <bits/stdc++.h>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <vector>
#include <string>
using namespace std;
typedef double  dbl;
typedef long long int lld;
#define PI 3.14159265358979323
#define foi(i,n) for(i = 0; i < n; i+=1)
#define fod(i,n) for(i=n-1; i >=0; i-=1)
#define MAX std::numeric_limits<lld>::max()
#define MIN std::numeric_limits<lld>::min()
#define FastIO  ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
set <lld> visit;
set <lld> small;
set <lld> high;
void dfs (vector <lld> V[], lld H[], lld pos)
{
	visit.insert(pos);
	vector <lld>child;
	lld flag = 1;
	for(lld i = 0; i < V[pos].size(); i+=1){
		if (!visit.count(V[pos][i])){
			if (H[pos] <= H[V[pos][i]]){
				if (H[pos] < H[V[pos][i]]){
					child.push_back(V[pos][i]);
				}
				else{
					flag = 0;
				}
			}
			else{
				small.insert(V[pos][i]);
			}
		}
	}
	if (!child.empty() || flag  == 0){
		for(lld i = 0; i < child.size(); i+=1){
			dfs(V, H, child[i]);
		}
	}
	else{
		high.insert(pos);
	}
}
int main ()
{
      FastIO
      lld n, m;
      cin >> n >> m;
      lld H[n+1];
      for(lld i = 1; i <=n; i++){
      	cin >> H[i];
      }
      vector <lld> V[n+1];
      for(lld i = 0; i < m; i++){
      	lld x, y;
      	cin >> x;
      	cin >> y;
      	V[x].push_back(y);
      	V[y].push_back(x);
      }
      for(lld i = 1; i <=n; i++){
      	if (!visit.count(i) && !small.count(i)){
      		dfs(V, H,i);
      	}
      }
      cout << high.size();
      // for(set <lld> :: iterator pos = high.begin(); pos != high.end(); pos++){
      // 	cout << (*pos) << " ";
      // }
      return 0;
}

Compiler output:
a.cc: In function 'void dfs(std::vector<long long int>*, lld*, lld)':
a.cc:27:9: error: reference to 'visit' is ambiguous
   27 |         visit.insert(pos);
      |         ^~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:80,
                 from a.cc:6:
/usr/include/c++/14/variant:1855:5: note: candidates are: 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1855 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
a.cc:22:11: note:                 'std::set<long long int> visit'
   22 | set <lld> visit;
      |           ^~~~~
a.cc:31:22: error: reference to 'visit' is ambiguous
   31 |                 if (!visit.count(V[pos][i])){
      |                      ^~~~~
/usr/include/c++/14/variant:1855:5: note: candidates are: 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1855 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
a.cc:22:11: note:                 'std::set<long long int> visit'
   22 | set <lld> visit;
      |           ^~~~~
a.cc: In function 'int main()':
a.cc:72:14: error: reference to 'visit' is ambiguous
   72 |         if (!visit.count(i) && !small.count(i)){
      |              ^~~~~
/usr/include/c++/14/variant:1855:5: note: candidates are: 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1855 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
a.cc:22:11: note:                 'std::set<long long int> visit'
   22 | set <lld> visit;
      |           ^~~~~