제출 #983600

#제출 시각아이디문제언어결과실행 시간메모리
983600Zbyszek99Two Transportations (JOI19_transportations)C++17
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> #include "Azer.h" #define ff first #define ss second using namespace std; struct Compare { bool operator<(pair<int,int> a, pair<int,int> b) { return a > b; } }; int GETTING_VAL= 0; int GETTING_V = 1; vector<int> ans; int n,m; vector<pair<int,int>> graf[2001]; bitset<2001> odw; priority_queue<pair<int,int>, vector<int>, Compare> pri; int akt_odl; int akt_oper; int how_many_bits; int num; int new_v; int tryb; int SendNum(int x, int wiel) { for(int bit = 0; bit < wiel; bit++) { if(x & (1 << bit)) { SendA(1); } else { SendA(0); } } } void InitA(int N, int M, vector<int> U, vector<int> V, vector<int> cost) { odw[0] = 1; ans[0] = 0; n = N; m = M; for(int i = 0; i < m; i++) { graf[U[i]].push_back({cost[i],V[i]}); graf[V[i]].push_back({cost[i],U[i]}); } for(auto& it: graf[0]) { pri.push(it); } pair<int,int> t = pri.top(); SendNum(t.ff - akt_odl,9) } void ReceiveA(bool x) { if(tryb == GETTING_VAL) { if(x) num += (1 << how_many_bits); how_many_bits++; if(how_many_bits == 9) { oper++; if(oper == n-1) return; if(pri.top().ff - akt_odl <= num) { SendNum(pri.top().ss,11); akt_odl = pri.top().ff; ans[pri.top().ff] = akt_odl; for(auto& it: graf[pri.top().ss]) { if(odw[it.ss] == 0) { pri.push({it.ff + akt_odl, it.ss}); odw[it.ss] = 1; } } how_many_bit = 0; num = 0; pri.pop(); SendNum(pri.top().ff - akt_odl,9); //only for Azer } else { new_v = 0; how_many_bits = 0; tryb = GETTING_V; } } } else { if(x) new_v += (1 << how_many_bits); how_many_bits++; if(how_many_bits == 11) { tryb = GETTING_VAL; ans[new_v] = akt_odl+num; akt_odl += num; odw[new_v] = 1; for(auto& it: graf[new_v]) { if(odw[it.ss] == 0) { pri.push({it.ff + akt_odl, it.ss}); odw[it.ss] = 1; } } how_many_bits = 0; num = 0; } } } vector<int> Answer() { return ans; }
#include <bits/stdc++.h> #include "Baijan.h" #define ff first #define ss second using namespace std; struct Compare { bool operator<(pair<int,int> a, pair<int,int> b) { return a > b; } }; int GETTING_VAL= 0; int GETTING_V = 1; vector<int> ans; int n,m; vector<pair<int,int>> graf[2001]; bitset<2001> odw; priority_queue<pair<int,int>, vector<int>, Compare> pri; int akt_odl; int akt_oper; int how_many_bits; int num; int new_v; int tryb; int SendNum(int x, int wiel) { for(int bit = 0; bit < wiel; bit++) { if(x & (1 << bit)) { SendB(1); } else { SendB(0); } } } void InitB(int N, int M, vector<int> U, vector<int> V, vector<int> cost) { odw[0] = 1; ans[0] = 0; n = N; m = M; for(int i = 0; i < m; i++) { graf[U[i]].push_back({cost[i],V[i]}); graf[V[i]].push_back({cost[i],U[i]}); } for(auto& it: graf[0]) { pri.push(it); } pair<int,int> t = pri.top(); SendNum(t.ff - akt_odl,9) } void ReceiveB(bool x) { if(tryb == GETTING_VAL) { if(x) num += (1 << how_many_bits); how_many_bits++; if(how_many_bits == 9) { oper++; if(oper == n-1) return; if(pri.top().ff - akt_odl <= num) { SendNum(pri.top().ss,11); akt_odl = pri.top().ff; ans[pri.top().ff] = akt_odl; for(auto& it: graf[pri.top().ss]) { if(odw[it.ss] == 0) { pri.push({it.ff + akt_odl, it.ss}); odw[it.ss] = 1; } } how_many_bit = 0; num = 0; pri.pop(); // SendNum(pri.top().ff - akt_odl,9); //only for Azer } else { new_v = 0; how_many_bits = 0; tryb = GETTING_V; } } } else { if(x) new_v += (1 << how_many_bits); how_many_bits++; if(how_many_bits == 11) { tryb = GETTING_VAL; ans[new_v] = akt_odl+num; akt_odl += num; odw[new_v] = 1; for(auto& it: graf[new_v]) { if(odw[it.ss] == 0) { pri.push({it.ff + akt_odl, it.ss}); odw[it.ss] = 1; } } how_many_bits = 0; num = 0; } } }

컴파일 시 표준 에러 (stderr) 메시지

Azer.cpp:8:10: error: 'bool Compare::operator<(std::pair<int, int>, std::pair<int, int>)' must have exactly one argument
    8 |     bool operator<(pair<int,int> a, pair<int,int> b) {
      |          ^~~~~~~~
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Azer.cpp:1:
/usr/include/c++/10/bits/stl_queue.h: In instantiation of 'class std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>':
Azer.cpp:20:53:   required from here
/usr/include/c++/10/bits/stl_queue.h:480:67: error: static assertion failed: value_type must be the same as the underlying container
  480 |       static_assert(is_same<_Tp, typename _Sequence::value_type>::value,
      |                                                                   ^~~~~
Azer.cpp: In function 'int SendNum(int, int)':
Azer.cpp:41:1: warning: no return statement in function returning non-void [-Wreturn-type]
   41 | }
      | ^
Azer.cpp: In function 'void InitA(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
Azer.cpp:56:20: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(std::pair<int, int>&)'
   56 |         pri.push(it);
      |                    ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Azer.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from 'std::pair<int, int>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from 'std::pair<int, int>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
Azer.cpp:58:30: error: conversion from 'const value_type' {aka 'const int'} to non-scalar type 'std::pair<int, int>' requested
   58 |     pair<int,int> t = pri.top();
      |                       ~~~~~~~^~
Azer.cpp:59:30: error: expected ';' before '}' token
   59 |     SendNum(t.ff - akt_odl,9)
      |                              ^
      |                              ;
   60 | }
      | ~                             
Azer.cpp: In function 'void ReceiveA(bool)':
Azer.cpp:70:13: error: 'oper' was not declared in this scope
   70 |             oper++;
      |             ^~~~
Azer.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Azer.cpp:72:26: note: in expansion of macro 'ff'
   72 |             if(pri.top().ff - akt_odl <= num)
      |                          ^~
Azer.cpp:4:12: error: request for member 'second' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    4 | #define ss second
      |            ^~~~~~
Azer.cpp:74:35: note: in expansion of macro 'ss'
   74 |                 SendNum(pri.top().ss,11);
      |                                   ^~
Azer.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Azer.cpp:75:37: note: in expansion of macro 'ff'
   75 |                 akt_odl = pri.top().ff;
      |                                     ^~
Azer.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Azer.cpp:76:31: note: in expansion of macro 'ff'
   76 |                 ans[pri.top().ff] = akt_odl;
      |                               ^~
Azer.cpp:4:12: error: request for member 'second' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    4 | #define ss second
      |            ^~~~~~
Azer.cpp:77:46: note: in expansion of macro 'ss'
   77 |                 for(auto& it: graf[pri.top().ss])
      |                                              ^~
Azer.cpp:81:58: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(<brace-enclosed initializer list>)'
   81 |                         pri.push({it.ff + akt_odl, it.ss});
      |                                                          ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Azer.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
Azer.cpp:85:17: error: 'how_many_bit' was not declared in this scope; did you mean 'how_many_bits'?
   85 |                 how_many_bit = 0;
      |                 ^~~~~~~~~~~~
      |                 how_many_bits
Azer.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Azer.cpp:88:35: note: in expansion of macro 'ff'
   88 |                 SendNum(pri.top().ff - akt_odl,9); //only for Azer
      |                                   ^~
Azer.cpp:112:54: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(<brace-enclosed initializer list>)'
  112 |                     pri.push({it.ff + akt_odl, it.ss});
      |                                                      ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Azer.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
                 from /usr/include/c++/10/bits/specfun.h:45,
                 from /usr/include/c++/10/cmath:1927,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Azer.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Iterator2 = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]':
/usr/include/c++/10/bits/stl_heap.h:231:14:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:263:25:   required from 'void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:332:19:   required from 'void std::pop_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]'
/usr/include/c++/10/bits/stl_queue.h:678:15:   required from 'void std::priority_queue<_Tp, _Sequence, _Compare>::pop() [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare]'
Azer.cpp:87:25:   required from here
/usr/include/c++/10/bits/predefined_ops.h:156:30: error: no match for call to '(Compare) (int&, int&)'
  156 |         { return bool(_M_comp(*__it1, *__it2)); }
      |                       ~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Value = int; _Compare = Compare]':
/usr/include/c++/10/bits/stl_heap.h:139:48:   required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_val<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:246:23:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:263:25:   required from 'void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:332:19:   required from 'void std::pop_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]'
/usr/include/c++/10/bits/stl_queue.h:678:15:   required from 'void std::priority_queue<_Tp, _Sequence, _Compare>::pop() [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare]'
Azer.cpp:87:25:   required from here
/usr/include/c++/10/bits/predefined_ops.h:194:23: error: no match for call to '(Compare) (int&, int&)'
  194 |  { return bool(_M_comp(*__it, __val)); }
      |                ~~~~~~~^~~~~~~~~~~~~~

Baijan.cpp:8:10: error: 'bool Compare::operator<(std::pair<int, int>, std::pair<int, int>)' must have exactly one argument
    8 |     bool operator<(pair<int,int> a, pair<int,int> b) {
      |          ^~~~~~~~
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Baijan.cpp:1:
/usr/include/c++/10/bits/stl_queue.h: In instantiation of 'class std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>':
Baijan.cpp:20:53:   required from here
/usr/include/c++/10/bits/stl_queue.h:480:67: error: static assertion failed: value_type must be the same as the underlying container
  480 |       static_assert(is_same<_Tp, typename _Sequence::value_type>::value,
      |                                                                   ^~~~~
Baijan.cpp: In function 'int SendNum(int, int)':
Baijan.cpp:41:1: warning: no return statement in function returning non-void [-Wreturn-type]
   41 | }
      | ^
Baijan.cpp: In function 'void InitB(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
Baijan.cpp:56:20: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(std::pair<int, int>&)'
   56 |         pri.push(it);
      |                    ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Baijan.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from 'std::pair<int, int>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from 'std::pair<int, int>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
Baijan.cpp:58:30: error: conversion from 'const value_type' {aka 'const int'} to non-scalar type 'std::pair<int, int>' requested
   58 |     pair<int,int> t = pri.top();
      |                       ~~~~~~~^~
Baijan.cpp:59:30: error: expected ';' before '}' token
   59 |     SendNum(t.ff - akt_odl,9)
      |                              ^
      |                              ;
   60 | }
      | ~                             
Baijan.cpp: In function 'void ReceiveB(bool)':
Baijan.cpp:70:13: error: 'oper' was not declared in this scope
   70 |             oper++;
      |             ^~~~
Baijan.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Baijan.cpp:72:26: note: in expansion of macro 'ff'
   72 |             if(pri.top().ff - akt_odl <= num)
      |                          ^~
Baijan.cpp:4:12: error: request for member 'second' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    4 | #define ss second
      |            ^~~~~~
Baijan.cpp:74:35: note: in expansion of macro 'ss'
   74 |                 SendNum(pri.top().ss,11);
      |                                   ^~
Baijan.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Baijan.cpp:75:37: note: in expansion of macro 'ff'
   75 |                 akt_odl = pri.top().ff;
      |                                     ^~
Baijan.cpp:3:12: error: request for member 'first' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    3 | #define ff first
      |            ^~~~~
Baijan.cpp:76:31: note: in expansion of macro 'ff'
   76 |                 ans[pri.top().ff] = akt_odl;
      |                               ^~
Baijan.cpp:4:12: error: request for member 'second' in 'pri.std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::top()', which is of non-class type 'const value_type' {aka 'const int'}
    4 | #define ss second
      |            ^~~~~~
Baijan.cpp:77:46: note: in expansion of macro 'ss'
   77 |                 for(auto& it: graf[pri.top().ss])
      |                                              ^~
Baijan.cpp:81:58: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(<brace-enclosed initializer list>)'
   81 |                         pri.push({it.ff + akt_odl, it.ss});
      |                                                          ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Baijan.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
Baijan.cpp:85:17: error: 'how_many_bit' was not declared in this scope; did you mean 'how_many_bits'?
   85 |                 how_many_bit = 0;
      |                 ^~~~~~~~~~~~
      |                 how_many_bits
Baijan.cpp:112:54: error: no matching function for call to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::push(<brace-enclosed initializer list>)'
  112 |                     pri.push({it.ff + akt_odl, it.ss});
      |                                                      ^
In file included from /usr/include/c++/10/queue:64,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86,
                 from Baijan.cpp:1:
/usr/include/c++/10/bits/stl_queue.h:640:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  640 |       push(const value_type& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:640:30: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const int&'}
  640 |       push(const value_type& __x)
      |            ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/10/bits/stl_queue.h:648:7: note: candidate: 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]'
  648 |       push(value_type&& __x)
      |       ^~~~
/usr/include/c++/10/bits/stl_queue.h:648:25: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::priority_queue<std::pair<int, int>, std::vector<int>, Compare>::value_type&&' {aka 'int&&'}
  648 |       push(value_type&& __x)
      |            ~~~~~~~~~~~~~^~~
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
                 from /usr/include/c++/10/bits/specfun.h:45,
                 from /usr/include/c++/10/cmath:1927,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Baijan.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Iterator2 = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]':
/usr/include/c++/10/bits/stl_heap.h:231:14:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:263:25:   required from 'void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:332:19:   required from 'void std::pop_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]'
/usr/include/c++/10/bits/stl_queue.h:678:15:   required from 'void std::priority_queue<_Tp, _Sequence, _Compare>::pop() [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare]'
Baijan.cpp:87:25:   required from here
/usr/include/c++/10/bits/predefined_ops.h:156:30: error: no match for call to '(Compare) (int&, int&)'
  156 |         { return bool(_M_comp(*__it1, *__it2)); }
      |                       ~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Value = int; _Compare = Compare]':
/usr/include/c++/10/bits/stl_heap.h:139:48:   required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_val<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:246:23:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = long int; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:263:25:   required from 'void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Compare>]'
/usr/include/c++/10/bits/stl_heap.h:332:19:   required from 'void std::pop_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = Compare]'
/usr/include/c++/10/bits/stl_queue.h:678:15:   required from 'void std::priority_queue<_Tp, _Sequence, _Compare>::pop() [with _Tp = std::pair<int, int>; _Sequence = std::vector<int>; _Compare = Compare]'
Baijan.cpp:87:25:   required from here
/usr/include/c++/10/bits/predefined_ops.h:194:23: error: no match for call to '(Compare) (int&, int&)'
  194 |  { return bool(_M_comp(*__it, __val)); }
      |                ~~~~~~~^~~~~~~~~~~~~~