Language: C++

#include<algorithm>
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
#include<map>
#include<queue>
#include<set>
#include<sstream>
#include<stack>
#include<string>
#include<vector>
using namespace std;
#define MP make_pair
typedef long long LL;
#define F first
#define S second

int n,m;
vector<pair<int,int> > v[100100];
map<LL,int> mp[100100];
bool vis[100100];

int D(int a,int b){
	int x=min(a,b);
	int y=max(a,b);
	return x*100000+y;
}

void dfs(int x){
	vis[x]=1;
	for(int i=0;i<v[x].size();i++){
		if(!vis[v[x][i].F]){
			if(mp[D(x,v[x][i].F)] != mp.end()){
				if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
					cout<<"NO"<<endl;
					exit(0);
				}else{
					mp[D(x,v[x][i].F)]=v[x][i].S;
					
				}
			}
		}
	}
}

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n>>m;
	int a,b,c;
	for(int i=1;i<=m;i++){
		cin>>a>>b>>c;
		v[a].push_back(MP(b,c));
		v[b].push_back(MP(a,c));
	}
	dfs(a);
	cout<<"Yes"<<endl;
	return 0;
}

Compiler output:
a.cc: In function 'void dfs(int)':
a.cc:34:53: error: request for member 'end' in 'mp', which is of non-class type 'std::map<long long int, int> [100100]'
   34 |                         if(mp[D(x,v[x][i].F)] != mp.end()){
      |                                                     ^~~
a.cc:35:54: error: no match for 'operator!=' (operand types are 'std::map<long long int, int>' and 'int')
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                    ~~~~~~~~~~~~~~~~~~^~
      |                                                     |
      |                                                     std::map<long long int, int>
In file included from /usr/include/c++/14/bits/stl_algobase.h:64,
                 from /usr/include/c++/14/algorithm:60,
                 from a.cc:1:
/usr/include/c++/14/bits/stl_pair.h:1052:5: note: candidate: 'template<class _T1, class _T2> constexpr bool std::operator!=(const pair<_T1, _T2>&, const pair<_T1, _T2>&)'
 1052 |     operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
      |     ^~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:1052:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::pair<_T1, _T2>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
In file included from /usr/include/c++/14/bits/stl_algobase.h:67:
/usr/include/c++/14/bits/stl_iterator.h:455:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator!=(const reverse_iterator<_Iterator>&, const reverse_iterator<_Iterator>&)'
  455 |     operator!=(const reverse_iterator<_Iterator>& __x,
      |     ^~~~~~~~
/usr/include/c++/14/bits/stl_iterator.h:455:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/bits/stl_iterator.h:500:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator!=(const reverse_iterator<_Iterator>&, const reverse_iterator<_IteratorR>&)'
  500 |     operator!=(const reverse_iterator<_IteratorL>& __x,
      |     ^~~~~~~~
/usr/include/c++/14/bits/stl_iterator.h:500:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/bits/stl_iterator.h:1686:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator!=(const move_iterator<_IteratorL>&, const move_iterator<_IteratorR>&)'
 1686 |     operator!=(const move_iterator<_IteratorL>& __x,
      |     ^~~~~~~~
/usr/include/c++/14/bits/stl_iterator.h:1686:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::move_iterator<_IteratorL>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/bits/stl_iterator.h:1753:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator!=(const move_iterator<_IteratorL>&, const move_iterator<_IteratorL>&)'
 1753 |     operator!=(const move_iterator<_Iterator>& __x,
      |     ^~~~~~~~
/usr/include/c++/14/bits/stl_iterator.h:1753:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::move_iterator<_IteratorL>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
In file included from /usr/include/c++/14/iosfwd:42,
                 from /usr/include/c++/14/ios:40,
                 from /usr/include/c++/14/ostream:40,
                 from /usr/include/c++/14/iostream:41,
                 from a.cc:3:
/usr/include/c++/14/bits/postypes.h:197:5: note: candidate: 'template<class _StateT> bool std::operator!=(const fpos<_StateT>&, const fpos<_StateT>&)'
  197 |     operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
      |     ^~~~~~~~
/usr/include/c++/14/bits/postypes.h:197:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::fpos<_StateT>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
In file included from /usr/include/c++/14/string:43,
                 from /usr/include/c++/14/bits/locale_classes.h:40,
                 from /usr/include/c++/14/bits/ios_base.h:41,
                 from /usr/include/c++/14/ios:44:
/usr/include/c++/14/bits/allocator.h:243:5: note: candidate: 'template<class _T1, class _T2> bool std::operator!=(const allocator<_CharT>&, const allocator<_T2>&)'
  243 |     operator!=(const allocator<_T1>&, const allocator<_T2>&)
      |     ^~~~~~~~
/usr/include/c++/14/bits/allocator.h:243:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::allocator<_CharT>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
In file included from /usr/include/c++/14/bits/basic_string.h:47,
                 from /usr/include/c++/14/string:54:
/usr/include/c++/14/string_view:651:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(basic_string_view<_CharT, _Traits>, basic_string_view<_CharT, _Traits>)'
  651 |     operator!=(basic_string_view<_CharT, _Traits> __x,
      |     ^~~~~~~~
/usr/include/c++/14/string_view:651:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'std::basic_string_view<_CharT, _Traits>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/string_view:658:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(basic_string_view<_CharT, _Traits>, __type_identity_t<basic_string_view<_CharT, _Traits> >)'
  658 |     operator!=(basic_string_view<_CharT, _Traits> __x,
      |     ^~~~~~~~
/usr/include/c++/14/string_view:658:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'std::basic_string_view<_CharT, _Traits>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/string_view:666:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(__type_identity_t<basic_string_view<_CharT, _Traits> >, basic_string_view<_CharT, _Traits>)'
  666 |     operator!=(__type_identity_t<basic_string_view<_CharT, _Traits>> __x,
      |     ^~~~~~~~
/usr/include/c++/14/string_view:666:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   mismatched types 'std::basic_string_view<_CharT, _Traits>' and 'int'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/bits/basic_string.h:3833:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const __cxx11::basic_string<_CharT, _Traits, _Allocator>&, const __cxx11::basic_string<_CharT, _Traits, _Allocator>&)'
 3833 |     operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      |     ^~~~~~~~
/usr/include/c++/14/bits/basic_string.h:3833:5: note:   template argument deduction/substitution failed:
a.cc:17:11: note:   'std::map<long long int, int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>'
   17 | #define S second
      |           ^~~~~~
a.cc:35:64: note: in expansion of macro 'S'
   35 |                                 if(mp[D(x,v[x][i].F)]!=v[x][i].S && mp[D(x,v[x][i].F)]!=0){
      |                                                                ^
/usr/include/c++/14/bits/basic_string.h:3847:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const _CharT*, const __cxx11::basic_string<_CharT, _Traits, _Allocator>&)'
 3847 |     operator!=(const _CharT* __lhs,
      |     ^~~~~~~~
/usr/include/c++/1