CP-Algorithms Library

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

View the Project on GitHub cp-algorithms/cp-algorithms-aux

:heavy_check_mark: Determinant of Matrix (Mod 2) (verify/structures/bitpack/det_mod_2.test.cpp)

Depends on

Code


// @brief Determinant of Matrix (Mod 2)
#define PROBLEM "https://judge.yosupo.jp/problem/matrix_det_mod_2"
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2")
#include "cp-algo/structures/bit_array_util.hpp"
#include <bits/stdc++.h>

using namespace std;
using cp_algo::structures::bit_array;

const int maxn = 1 << 12;
bit_array<maxn> a[maxn];

void solve() {
    size_t n;
    cin >> n;
    cp_algo::big_string row;
    cp_algo::big_vector<size_t> lead(n);
    for(size_t i = 0; i < n; i++) {
        cin >> row;
        from_string(a[i], row);
        for(size_t j = 0; j < i; j++) {
            if(a[i][lead[j]]) {
                a[i].xor_hint(a[j], lead[j]);
            }
        }
        lead[i] = ctz(a[i]);
        if(lead[i] == n) {
            cout << 0 << "\n";
            return;
        }
    }
    cout << 1 << "\n";
}

signed main() {
    //freopen("input.txt", "r", stdin);
    ios::sync_with_stdio(0);
    cin.tie(0);
    int t = 1;
    while(t--) {
        solve();
    }
}
Traceback (most recent call last):
  File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj_resolve/resolver.py", line 181, 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 252, in bundle
    bundler.update(path)
  File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 327, in update
    assert len(lines) == len(uncommented_lines)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError

Test cases

Env Name Status Elapsed Memory
g++ example_00 :heavy_check_mark: AC 4 ms 4 MB
g++ example_01 :heavy_check_mark: AC 4 ms 4 MB
g++ lowrank_max_random_00 :heavy_check_mark: AC 35 ms 4 MB
g++ lowrank_max_random_01 :heavy_check_mark: AC 139 ms 6 MB
g++ lowrank_max_random_02 :heavy_check_mark: AC 38 ms 5 MB
g++ lowrank_max_random_03 :heavy_check_mark: AC 33 ms 4 MB
g++ lowrank_max_random_04 :heavy_check_mark: AC 19 ms 4 MB
g++ max_random_00 :heavy_check_mark: AC 203 ms 6 MB
g++ max_random_01 :heavy_check_mark: AC 204 ms 6 MB
g++ max_random_02 :heavy_check_mark: AC 204 ms 6 MB
g++ max_random_03 :heavy_check_mark: AC 205 ms 6 MB
g++ max_random_04 :heavy_check_mark: AC 203 ms 6 MB
g++ max_random_05 :heavy_check_mark: AC 203 ms 6 MB
g++ middle_00 :heavy_check_mark: AC 8 ms 4 MB
g++ middle_01 :heavy_check_mark: AC 5 ms 4 MB
g++ middle_02 :heavy_check_mark: AC 4 ms 4 MB
g++ middle_03 :heavy_check_mark: AC 5 ms 4 MB
g++ middle_04 :heavy_check_mark: AC 6 ms 4 MB
g++ middle_05 :heavy_check_mark: AC 9 ms 4 MB
g++ perm_max_random_00 :heavy_check_mark: AC 4 ms 4 MB
g++ perm_max_random_01 :heavy_check_mark: AC 4 ms 4 MB
g++ perm_max_random_02 :heavy_check_mark: AC 3 ms 4 MB
g++ perm_max_random_03 :heavy_check_mark: AC 3 ms 4 MB
g++ perm_max_random_04 :heavy_check_mark: AC 3 ms 4 MB
g++ random_00 :heavy_check_mark: AC 7 ms 4 MB
g++ random_01 :heavy_check_mark: AC 4 ms 4 MB
g++ random_02 :heavy_check_mark: AC 4 ms 4 MB
g++ random_03 :heavy_check_mark: AC 118 ms 5 MB
g++ random_04 :heavy_check_mark: AC 68 ms 5 MB
g++ random_05 :heavy_check_mark: AC 187 ms 6 MB
g++ small_00 :heavy_check_mark: AC 4 ms 4 MB
g++ small_01 :heavy_check_mark: AC 4 ms 4 MB
g++ small_02 :heavy_check_mark: AC 3 ms 4 MB
g++ small_03 :heavy_check_mark: AC 3 ms 4 MB
g++ small_04 :heavy_check_mark: AC 3 ms 4 MB
g++ small_05 :heavy_check_mark: AC 3 ms 4 MB
Back to top page