joioi.cpp:105:1: error: expected '}' at end of input
105 | }
| ^
joioi.cpp:26:12: note: to match this '{'
26 | struct bit {
| ^
joioi.cpp: In constructor 'bit::bit(ll, ll)':
joioi.cpp:30:62: error: expected ')' before '{' token
30 | n(_n), m(_m), v(vector<vector<int>> (n+1, vector<int>(m+1)){
| ~ ^
| )
joioi.cpp:45:1: error: expected '{' before '}' token
45 | };
| ^
In file included from /usr/include/c++/9/cassert:44,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:33,
from joioi.cpp:1:
joioi.cpp: In lambda function:
joioi.cpp:64:15: error: 'struct bit' has no member named 'qry'
64 | assert(tree.qry(p.first, p.second) <= p.first * p.second);
| ^~~
joioi.cpp:65:15: error: 'struct bit' has no member named 'qry'
65 | return tree.qry(p.first, p.second) == p.first * p.second;
| ^~~
joioi.cpp: In member function 'void bit::update()':
joioi.cpp:68:28: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
68 | for (int i = 0, j = 0;i+1 < id.size();++i) {
| ~~~~^~~~~~~~~~~
joioi.cpp:69:8: error: 'struct bit' has no member named 'add'
69 | tree.add(id[i].first, id[i].second);
| ^~~
joioi.cpp:71:25: error: could not convert 'valid.bit::update()::<lambda(std::pair<long long int, long long int>)>((*(const std::pair<long long int, long long int>*)(& id.std::vector<std::pair<long long int, long long int> >::operator[](((std::vector<std::pair<long long int, long long int> >::size_type)j)))))' from 'void' to 'bool'
71 | while (j <= i && valid(id[j]))
| ~~~~~^~~~~~~
joioi.cpp:75:12: error: could not convert 'valid.bit::update()::<lambda(std::pair<long long int, long long int>)>((*(const std::pair<long long int, long long int>*)(& id.std::vector<std::pair<long long int, long long int> >::operator[](0))))' from 'void' to 'bool'
75 | if (valid(id[0]) && valid(id[i]))
| ~~~~~^~~~~~~
joioi.cpp:75:28: error: could not convert 'valid.bit::update()::<lambda(std::pair<long long int, long long int>)>((*(const std::pair<long long int, long long int>*)(& id.std::vector<std::pair<long long int, long long int> >::operator[](((std::vector<std::pair<long long int, long long int> >::size_type)i)))))' from 'void' to 'bool'
75 | if (valid(id[0]) && valid(id[i]))
| ~~~~~^~~~~~~
joioi.cpp: In member function 'int32_t bit::main()':
joioi.cpp:105:1: warning: no return statement in function returning non-void [-Wreturn-type]
105 | }
| ^
joioi.cpp: At global scope:
joioi.cpp:105:1: error: expected unqualified-id at end of input