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: Adjugate Matrix (verify/linalg/adj.test.cpp)

Depends on

Code

// @brief Adjugate Matrix
#define PROBLEM "https://judge.yosupo.jp/problem/adjugate_matrix"
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2")
#include <bits/stdc++.h>
//#include "blazingio/blazingio.min.hpp"
#include "cp-algo/linalg/matrix.hpp"

const int64_t mod = 998244353;

using namespace std;
using cp_algo::math::modint;
using cp_algo::linalg::matrix;


void solve() {
    int n;
    cin >> n;
    matrix<modint<mod>> A(n + 1);
    for(int i: views::iota(0, n)) {
        for(int j: views::iota(0, n)) {
            cin >> A[i][j];
        }
    }
    for(int i: views::iota(0, n)) {
        A[i][n] = cp_algo::random::rng();
        A[n][i] = cp_algo::random::rng();
    }
    auto [D, Ai] = A.inv();
    for(int i: views::iota(0, n)) {
        for(int j: views::iota(0, n)) {
            if(D != 0) {
                auto res = Ai[n][n] * Ai[i][j] - Ai[i][n] * Ai[n][j];
                cout << res * D << " \n"[j + 1 == n];
            } else {
                cout << 0 << " \n"[j + 1 == n];
            }
            
        }
    }
}

int main() {
    //freopen("input.txt", "r", stdin);
    ios::sync_with_stdio(0);
    cin.tie(0);
    solve();
    return 0;
}
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++ almost_identity_00 :heavy_check_mark: AC 37 ms 11 MB
g++ almost_perm_max_random_00 :heavy_check_mark: AC 37 ms 12 MB
g++ almost_perm_max_random_01 :heavy_check_mark: AC 38 ms 12 MB
g++ almost_perm_max_random_02 :heavy_check_mark: AC 38 ms 12 MB
g++ anti55588_00 :heavy_check_mark: AC 5 ms 4 MB
g++ example_00 :heavy_check_mark: AC 4 ms 4 MB
g++ example_01 :heavy_check_mark: AC 4 ms 4 MB
g++ example_02 :heavy_check_mark: AC 4 ms 4 MB
g++ example_03 :heavy_check_mark: AC 4 ms 4 MB
g++ highrank_max_random_00 :heavy_check_mark: AC 82 ms 12 MB
g++ highrank_max_random_01 :heavy_check_mark: AC 81 ms 12 MB
g++ highrank_max_random_02 :heavy_check_mark: AC 81 ms 12 MB
g++ highrank_max_random_03 :heavy_check_mark: AC 81 ms 12 MB
g++ highrank_max_random_04 :heavy_check_mark: AC 82 ms 12 MB
g++ lowrank_max_random_00 :heavy_check_mark: AC 74 ms 11 MB
g++ lowrank_max_random_01 :heavy_check_mark: AC 71 ms 11 MB
g++ lowrank_max_random_02 :heavy_check_mark: AC 76 ms 11 MB
g++ lowrank_max_random_03 :heavy_check_mark: AC 71 ms 11 MB
g++ lowrank_max_random_04 :heavy_check_mark: AC 74 ms 11 MB
g++ max_random_00 :heavy_check_mark: AC 84 ms 11 MB
g++ max_random_01 :heavy_check_mark: AC 85 ms 11 MB
g++ max_random_02 :heavy_check_mark: AC 89 ms 11 MB
g++ max_random_03 :heavy_check_mark: AC 85 ms 11 MB
g++ max_random_04 :heavy_check_mark: AC 85 ms 11 MB
g++ nontrivial_frobenius_form_00 :heavy_check_mark: AC 37 ms 11 MB
g++ nontrivial_frobenius_form_01 :heavy_check_mark: AC 88 ms 11 MB
g++ nontrivial_frobenius_form_02 :heavy_check_mark: AC 84 ms 11 MB
g++ nontrivial_frobenius_form_03 :heavy_check_mark: AC 85 ms 11 MB
g++ nontrivial_frobenius_form_04 :heavy_check_mark: AC 84 ms 11 MB
g++ nontrivial_frobenius_form_05 :heavy_check_mark: AC 86 ms 11 MB
g++ nontrivial_frobenius_form_06 :heavy_check_mark: AC 84 ms 11 MB
g++ nontrivial_frobenius_form_07 :heavy_check_mark: AC 83 ms 11 MB
g++ nontrivial_frobenius_form_08 :heavy_check_mark: AC 84 ms 11 MB
g++ nontrivial_frobenius_form_09 :heavy_check_mark: AC 89 ms 11 MB
g++ perm_max_random_00 :heavy_check_mark: AC 38 ms 12 MB
g++ perm_max_random_01 :heavy_check_mark: AC 38 ms 12 MB
g++ perm_max_random_02 :heavy_check_mark: AC 39 ms 12 MB
g++ random_00 :heavy_check_mark: AC 12 ms 5 MB
g++ random_01 :heavy_check_mark: AC 14 ms 5 MB
g++ random_02 :heavy_check_mark: AC 6 ms 4 MB
g++ random_03 :heavy_check_mark: AC 13 ms 5 MB
g++ random_04 :heavy_check_mark: AC 4 ms 4 MB
g++ signed_overflow_00 :heavy_check_mark: AC 4 ms 4 MB
g++ unsigned_overflow_00 :heavy_check_mark: AC 4 ms 4 MB
Back to top page