| Task: | 3SUM |
| Sender: | aalto26gm_039 |
| Submission time: | 2026-10-19 17:48:23 +0300 |
| Language: | C++ (C++23) |
| Status: | COMPILE ERROR |
Compiler report
In file included from input/code.cpp:3:
/usr/include/c++/13/format: In instantiation of 'class std::__format::_Checking_scanner<char, std::vector<int, std::allocator<int> > >':
/usr/include/c++/13/format:3750:4: required from 'consteval std::basic_format_string<_CharT, _Args>::basic_format_string(const _Tp&) [with _Tp = char [3]; _CharT = char; _Args = {std::vector<int, std::allocator<int> >&}]'
input/code.cpp:28:78: required from here
/usr/include/c++/13/format:3672:10: error: static assertion failed: std::formatter must be specialized for each type being formatted
3672 | (is_default_constructible_v<formatter<_Args, _CharT>> && ...),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/format:3672:10: note: 'std::is_default_constructible_v<std::formatter<std::vector<int>, char> >' evaluates to false
/usr/include/c++/13/format: In instantiation of 'constexpr void std::__format::_Checking_scanner<_CharT, _Args>::_M_parse_format_spec(std:...Code
#include <iostream>
#include <vector>
#include <format>
struct conn {
int node;
std::vector<int> path_until_node;
};
int main(int argc, char **argv) {
int n, m;
std::cin >> n >> m;
std::vector<std::vector<bool>> adj(n+1, std::vector<bool>(n+1, true));
for (int i=0; i<m; i++) {
int a, b;
std::cin >> a >> b;
adj.at(a).at(b) = false;
adj.at(b).at(a) = false;
}
//std::cout << std::format("{}", adj) << std::endl;
std::vector<conn> to_visit = {{1, {1}}};
std::vector<int> visited(n+1, false);
while (!to_visit.empty()) {
for (conn cn : to_visit) std::cout << cn.node << " " << std::format("{}", cn.path_until_node) << std::endl;
conn info = to_visit.back();
int cur_node = info.node;
visited[cur_node] = true;
to_visit.pop_back();
for (int i=1; i<=n; i++) {
if (visited.at(i)) continue;
if (!adj.at(cur_node).at(i)) continue;
if (i == n) {
std::cout << info.path_until_node.size() + 1 << std::endl;
for (int j : info.path_until_node) {
std::cout << i << " ";
}
std::cout << i << std::endl;
return 0;
}
std::vector<int> path_until_node(info.path_until_node);
std::cout << "CN: " << cur_node << std::format("{}", path_until_node) << std::endl;
path_until_node.push_back(cur_node);
to_visit.push_back({i, path_until_node});
}
}
std::cout << 0 << std::endl;
return 0;
}