This documentation is automatically generated by competitive-verifier/competitive-verifier
#include "lib/geometry/geometry3d.hpp"#include "template/template.hpp"
template <class T>
struct Pos {
T x, y, z;
constexpr Pos() : x(), y(), z() {}
constexpr Pos(T _x, T _y, T _z) : x(_x), y(_y), z(_z) {}
};
template <class T>
struct Circle3 {
Pos<T> p;
T r;
constexpr Circle3(Pos<T> _p, T _r) : p(_p), r(_r) {}
};
template <class T>
Circle3<T> min_ball(std::vector<Pos<T>> &ps, Pos<T> p = {0.0, 0.0, 0.0}) {
auto dist = [](const Pos<T> &a, const Pos<T> &b) -> T {
T dx = a.x - b.x;
T dy = a.y - b.y;
T dz = a.z - b.z;
return std::sqrt(dx * dx + dy * dy + dz * dz);
};
T r = 0.0, move = 0.5;
Pos<T> k = {0.0, 0.0, 0.0};
while (move > EPS * EPS) {
r = 0.0;
for (Pos<T> i : ps)
if (chmax(r, dist(p, i))) k = i;
p.x += (k.x - p.x) * move;
p.y += (k.y - p.y) * move;
p.x += (k.z - p.z) * move;
move *= 0.999;
}
return Circle3<T>(p, r);
}
Traceback (most recent call last):
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/resolver.py", line 291, in resolve
bundled_code = language.bundle(path, basedir=basedir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus.py", line 242, in bundle
bundler.update(path)
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 479, in update
self._resolve(pathlib.Path(included), included_from=path)
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 286, in _resolve
raise BundleErrorAt(path, -1, "no such header")
competitive_verifier.oj.verify.languages.cplusplus_bundle.BundleErrorAt: template/template.hpp: line -1: no such header