C++ アルゴリズムとデータ構造のライブラリ
#include "template/template.hpp"桁溢れ防止のため#define int long longを使用しています
各ライブラリは、このテンプレートにほぼ依存しないように作られています
/**
* @brief ฅ^>ω<^ฅ
* @author serna37
* @note https://serna37.github.io/library-cpp/
*/
#ifdef LOCAL
#include "template/debug.hpp"
#else
#define debug(...)
#endif
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define all(x) begin(x), end(x)
#define rall(x) rbegin(x), rend(x)
#define endl "\n"
template <typename T> using vec2 = vector<vector<T>>;
template <typename T> using reverse_queue = priority_queue<T, vector<T>, greater<T>>;
constexpr long long INF = 1e18;
constexpr long long MOD = 998244353;
constexpr long long MOD7 = 1e9 + 7;
const long double PI = acosl(-1);
struct IoSetup {
IoSetup() {
cin.tie(0)->sync_with_stdio(0);
cout << fixed << setprecision(20);
cerr << fixed << setprecision(10);
}
} iosetup;
template <typename T> istream &operator>>(istream &s, vector<T> &v) {
for (auto &&e : v) s >> e;
return s;
}
template <typename T> ostream &operator<<(ostream &s, const vector<T> &v) {
for (int i = 0; i < (int)v.size(); ++i) s << (i ? " " : "") << v[i];
return s;
}
template <typename T> void print(const T &v) { cout << v << endl; }
template <typename T> void print(const vector<vector<T>> &G) { for (auto &&v : G) cout << v << endl; }
template <typename T> vec2<T> make_vec2(int H, int W, T init = 0) { return vector<vector<T>>(H, vector<T>(W, init)); }
template <typename T> bool chmin(T &i, const T &j) { return i > j && (i = j, true); }
template <typename T> bool chmax(T &i, const T &j) { return i < j && (i = j, true); }
void solve();
signed main() { solve(); }
// ----------------------------------------
// #include "template/template.hpp" is done.
// ----------------------------------------Traceback (most recent call last):
File "/home/runner/.local/lib/python3.12/site-packages/onlinejudge_verify/documentation/build.py", line 71, in _render_source_code_stat
bundled_code = language.bundle(stat.path, basedir=basedir, options={'include_paths': [basedir]}).decode()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/.local/lib/python3.12/site-packages/onlinejudge_verify/languages/cplusplus.py", line 187, in bundle
bundler.update(path)
File "/home/runner/.local/lib/python3.12/site-packages/onlinejudge_verify/languages/cplusplus_bundle.py", line 400, in update
raise BundleErrorAt(path, i + 1, "unable to process #include in #if / #ifdef / #ifndef other than include guards")
onlinejudge_verify.languages.cplusplus_bundle.BundleErrorAt: template/template.hpp: line 7: unable to process #include in #if / #ifdef / #ifndef other than include guards