# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
799717 | tch1cherin | Genetics (BOI18_genetics) | C++17 | 461 ms | 91736 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("sse4.1,sse4.2,avx,avx2,bmi,bmi2,lzcnt,popcnt,fma")
#include <bits/stdc++.h>
using namespace std;
template <const int N>
struct Bitset {
uint64_t bs[(N + 63) >> 6] = {};
void set(int i) { bs[i >> 6] |= 1ull << (i & 63); }
};
template <const int N>
int operator^(Bitset<N>& A, Bitset<N>& B) {
int ans = 0;
constexpr int C = (N + 63) >> 6;
for (int i = 0; i < C; i++) {
ans += __builtin_popcountll(A.bs[i] ^ B.bs[i]);
}
return ans;
}
const int MAX_N = 4105;
Bitset<MAX_N> bs[MAX_N][4];
string S[MAX_N];
bool good[MAX_N];
int dist[MAX_N][MAX_N], cnt[MAX_N][4];
int to[128];
using R = uniform_int_distribution<int>;
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |