/ Vijos /

记录详情

Compile Error

/in/foo.cc: In function 'll solve_parity(int)':
/in/foo.cc:98:28: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   98 |     auto update_tree = [&](auto &self, int node, int l, int r, int ul, int ur, int val) -> void
      |                            ^~~~
/in/foo.cc: In lambda function:
/in/foo.cc:108:21: error: expression cannot be used as a function
  108 |                 self(self, 2 * node, l, mid, ul, ur, val);
      |                 ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc:110:21: error: expression cannot be used as a function
  110 |                 self(self, 2 * node + 1, mid + 1, r, ul, ur, val);
      |                 ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc: In function 'll solve_parity(int)':
/in/foo.cc:127:28: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  127 |     auto query_range = [&](auto &self, int node, int l, int r, ll ql, ll qr) -> ll
      |                            ^~~~
/in/foo.cc: In lambda function:
/in/foo.cc:142:20: error: expression cannot be used as a function
  142 |         return self(self, 2 * node, l, mid, ql, qr) + self(self, 2 * node + 1, mid + 1, r, ql, qr);
      |                ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc:142:59: error: expression cannot be used as a function
  142 |         return self(self, 2 * node, l, mid, ql, qr) + self(self, 2 * node + 1, mid + 1, r, ql, qr);
      |                                                       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc: In function 'll solve_parity(int)':
/in/foo.cc:157:24: error: no match for call to '(solve_parity(int)::<lambda(int&, int, int, int, int, int, int)>) (solve_parity(int)::<lambda(int&, int, int, int, int, int, int)>&, int, int, int, int&, int&, int&)'
  157 |             update_tree(update_tree, 1, 0, sz - 1, ul, ur, it_event->type);
      |             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc:98:24: note: candidate: 'solve_parity(int)::<lambda(int&, int, int, int, int, int, int)>'
   98 |     auto update_tree = [&](auto &self, int node, int l, int r, int ul, int ur, int val) -> void
      |                        ^
/in/foo.cc:98:24: note:   no known conversion for argument 1 from 'solve_parity(int)::<lambda(int&, int, int, int, int, int, int)>' to 'int&'
/in/foo.cc: In lambda function:
/in/foo.cc:168:35: error: no match for call to '(solve_parity(int)::<lambda(int&, int, int, int, ll, ll)>) (solve_parity(int)::<lambda(int&, int, int, int, ll, ll)>&, int, int, int, ll&, ll&)'
  168 |                 return query_range(query_range, 1, 0, sz - 1, ql, qr);
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc:127:24: note: candidate: 'solve_parity(int)::<lambda(int&, int, int, int, ll, ll)>'
  127 |     auto query_range = [&](auto &self, int node, int l, int r, ll ql, ll qr) -> ll
      |                        ^
/in/foo.cc:127:24: note:   no known conversion for argument 1 from 'solve_parity(int)::<lambda(int&, int, int, int, ll, ll)>' to 'int&'

信息

递交者
类型
递交
题目
P1231 棋盘上的士兵
语言
C++
递交时间
2026-06-01 17:33:31
评测时间
2026-06-01 17:33:31
评测机
分数
0
总耗时
0ms
峰值内存
0 Bytes