algo

This documentation is automatically generated by competitive-verifier/competitive-verifier

View the Project on GitHub kuhaku-space/algo

:heavy_check_mark: test/aoj/jag/hash_int.test.cpp

Depends on

Code

// competitive-verifier: PROBLEM https://onlinejudge.u-aizu.ac.jp/problems/2971
#include <iostream>
#include "math/hashint.hpp"
#include "tree/weighted_union_find.hpp"

struct S {
    HashInt x;

    constexpr S() : x(1) {}
    constexpr S(HashInt x) : x(x) {}

    constexpr S &operator+=(const S &rhs) noexcept {
        x *= rhs.x;
        return *this;
    }
    constexpr S &operator-=(const S &rhs) noexcept {
        x /= rhs.x;
        return *this;
    }

    constexpr S operator-() const noexcept { return S(x.inverse()); }
    constexpr S operator+(const S &rhs) const noexcept { return S(*this) += rhs; }
    constexpr S operator-(const S &rhs) const noexcept { return S(*this) -= rhs; }

    constexpr bool operator==(const S &rhs) const noexcept { return x == rhs.x; }
    constexpr bool operator!=(const S &rhs) const noexcept { return x != rhs.x; }
};

int main(void) {
    int n, m;
    std::cin >> n >> m;
    weighted_union_find<S> uf(n);
    while (m--) {
        int u, v, w;
        std::cin >> u >> v >> w;
        --u, --v;
        if (uf.same(u, v)) {
            if (uf.diff(u, v) != S(w)) {
                std::cout << "No\n";
                return 0;
            }
        } else {
            uf.unite(u, v, S(w));
        }
    }
    std::cout << "Yes\n";

    return 0;
}
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: math/hashint.hpp: line -1: no such header

Test cases

Env Name Status Elapsed Memory
g++ testcase_000 :heavy_check_mark: AC 3 ms 3 MB
g++ testcase_001 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_002 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_003 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_004 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_005 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_006 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_007 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_008 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_009 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_010 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_011 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_012 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_013 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_014 :heavy_check_mark: AC 14 ms 4 MB
g++ testcase_015 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_016 :heavy_check_mark: AC 10 ms 4 MB
g++ testcase_017 :heavy_check_mark: AC 5 ms 4 MB
g++ testcase_018 :heavy_check_mark: AC 12 ms 4 MB
g++ testcase_019 :heavy_check_mark: AC 23 ms 4 MB
g++ testcase_020 :heavy_check_mark: AC 3 ms 4 MB
g++ testcase_021 :heavy_check_mark: AC 30 ms 4 MB
g++ testcase_022 :heavy_check_mark: AC 9 ms 4 MB
g++ testcase_023 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_024 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_025 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_026 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_027 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_028 :heavy_check_mark: AC 3 ms 4 MB
g++ testcase_029 :heavy_check_mark: AC 3 ms 4 MB
g++ testcase_030 :heavy_check_mark: AC 3 ms 4 MB
g++ testcase_031 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_032 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_033 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_034 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_035 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_036 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_037 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_038 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_039 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_040 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_041 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_042 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_043 :heavy_check_mark: AC 2 ms 4 MB
g++ testcase_044 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_045 :heavy_check_mark: AC 2 ms 3 MB
g++ testcase_046 :heavy_check_mark: AC 5 ms 4 MB
g++ testcase_047 :heavy_check_mark: AC 10 ms 4 MB
g++ testcase_048 :heavy_check_mark: AC 29 ms 4 MB
g++ testcase_049 :heavy_check_mark: AC 6 ms 4 MB
g++ testcase_050 :heavy_check_mark: AC 45 ms 4 MB
g++ testcase_051 :heavy_check_mark: AC 50 ms 4 MB
g++ testcase_052 :heavy_check_mark: AC 39 ms 4 MB
g++ testcase_053 :heavy_check_mark: AC 10 ms 4 MB
g++ testcase_054 :heavy_check_mark: AC 43 ms 4 MB
g++ testcase_055 :heavy_check_mark: AC 22 ms 4 MB
g++ testcase_056 :heavy_check_mark: AC 62 ms 4 MB
g++ testcase_057 :heavy_check_mark: AC 30 ms 4 MB
g++ testcase_058 :heavy_check_mark: AC 8 ms 4 MB
g++ testcase_059 :heavy_check_mark: AC 8 ms 4 MB
g++ testcase_060 :heavy_check_mark: AC 52 ms 4 MB
g++ testcase_061 :heavy_check_mark: AC 40 ms 4 MB
g++ testcase_062 :heavy_check_mark: AC 55 ms 4 MB
g++ testcase_063 :heavy_check_mark: AC 59 ms 4 MB
g++ testcase_064 :heavy_check_mark: AC 22 ms 4 MB
g++ testcase_065 :heavy_check_mark: AC 44 ms 4 MB
g++ testcase_066 :heavy_check_mark: AC 28 ms 4 MB
g++ testcase_067 :heavy_check_mark: AC 30 ms 4 MB
g++ testcase_068 :heavy_check_mark: AC 28 ms 4 MB
g++ testcase_069 :heavy_check_mark: AC 56 ms 4 MB
g++ testcase_070 :heavy_check_mark: AC 55 ms 4 MB
g++ testcase_071 :heavy_check_mark: AC 56 ms 4 MB
g++ testcase_072 :heavy_check_mark: AC 58 ms 4 MB
g++ testcase_073 :heavy_check_mark: AC 52 ms 4 MB
g++ testcase_074 :heavy_check_mark: AC 54 ms 4 MB
g++ testcase_075 :heavy_check_mark: AC 44 ms 4 MB
g++ testcase_076 :heavy_check_mark: AC 40 ms 3 MB
g++ testcase_077 :heavy_check_mark: AC 39 ms 3 MB
g++ testcase_078 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_079 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_080 :heavy_check_mark: AC 78 ms 4 MB
g++ testcase_081 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_082 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_083 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_084 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_085 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_086 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_087 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_088 :heavy_check_mark: AC 67 ms 4 MB
g++ testcase_089 :heavy_check_mark: AC 75 ms 4 MB
g++ testcase_090 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_091 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_092 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_093 :heavy_check_mark: AC 77 ms 4 MB
g++ testcase_094 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_095 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_096 :heavy_check_mark: AC 77 ms 4 MB
g++ testcase_097 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_098 :heavy_check_mark: AC 76 ms 4 MB
g++ testcase_099 :heavy_check_mark: AC 79 ms 4 MB
g++ testcase_100 :heavy_check_mark: AC 59 ms 4 MB
g++ testcase_101 :heavy_check_mark: AC 59 ms 4 MB
g++ testcase_102 :heavy_check_mark: AC 56 ms 4 MB
g++ testcase_103 :heavy_check_mark: AC 59 ms 4 MB
g++ testcase_104 :heavy_check_mark: AC 58 ms 4 MB
g++ testcase_105 :heavy_check_mark: AC 58 ms 4 MB
g++ testcase_106 :heavy_check_mark: AC 57 ms 4 MB
g++ testcase_107 :heavy_check_mark: AC 61 ms 4 MB
g++ testcase_108 :heavy_check_mark: AC 60 ms 4 MB
Back to top page