From 0d37fb416d4962b8ef3c68066879faf9c1d30ea5 Mon Sep 17 00:00:00 2001 From: subcrip Date: Thu, 4 Apr 2024 17:33:48 +0800 Subject: [PATCH] backup --- src/bin/a.cc | 38 ++-- src/bin/a.out | Bin 63256 -> 1081880 bytes src/bin/b.cc | 59 ++++-- src/bin/c.cc | 76 +++++++- src/bin/cc-128ba.cc | 292 ++++++++++++++++++++++++++++ src/bin/cc-128bb.cc | 314 ++++++++++++++++++++++++++++++ src/bin/cc-128bc.cc | 298 +++++++++++++++++++++++++++++ src/bin/cc-128bd.cc | 286 ++++++++++++++++++++++++++++ src/bin/cc-128be.cc | 325 +++++++++++++++++++++++++++++++ src/bin/cf-1486e.cc | 320 +++++++++++++++++++++++++++++++ src/bin/cf-1526d.cc | 338 +++++++++++++++++++++++++++++++++ src/bin/cf-1530e.cc | 410 ++++++++++++++++++++++++++++++++++++++++ src/bin/codefun-1792.cc | 300 +++++++++++++++++++++++++++++ src/bin/codefun-1793.cc | 291 ++++++++++++++++++++++++++++ src/bin/codefun-1794.cc | 296 +++++++++++++++++++++++++++++ src/bin/d.cc | 107 +++++++++-- src/bin/e.cc | 67 ++++++- src/bin/std.in | 15 +- src/bin/template.cc | 3 +- src/bin/test.py | 14 +- src/bin/test1.py | 11 ++ 21 files changed, 3783 insertions(+), 77 deletions(-) create mode 100644 src/bin/cc-128ba.cc create mode 100644 src/bin/cc-128bb.cc create mode 100644 src/bin/cc-128bc.cc create mode 100644 src/bin/cc-128bd.cc create mode 100644 src/bin/cc-128be.cc create mode 100644 src/bin/cf-1486e.cc create mode 100644 src/bin/cf-1526d.cc create mode 100644 src/bin/cf-1530e.cc create mode 100644 src/bin/codefun-1792.cc create mode 100644 src/bin/codefun-1793.cc create mode 100644 src/bin/codefun-1794.cc create mode 100644 src/bin/test1.py diff --git a/src/bin/a.cc b/src/bin/a.cc index 5b566eb..8f8e87f 100644 --- a/src/bin/a.cc +++ b/src/bin/a.cc @@ -182,6 +182,22 @@ ll inverse(ll a, ll b) { return mod(x, b); } +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + /* string algorithms */ vector calc_next(string t) { // pi function of t int n = (int)t.length(); @@ -241,21 +257,21 @@ void dump() {} void prep() {} void solve() { - read(int, n, m, k); - readvec(int, a, n); - readvec(int, b, m); - sort(a.begin(), a.end()); - sort(b.begin(), b.end()); - int res = 0; - for (int i = 0; i < n; ++i) { - int j = -1; - while (j + 1 < m && b[j + 1] + a[i] <= k) ++j; - res += j + 1; + read(int, n); + cout << "0 "; + for (int i = 1; i <= (n - 1) / 2; ++i) { + cout << i << ' ' << -i << ' '; } - cout << res << endl; + if (n % 2 == 0) { + cout << (n - 1) / 2 + 1; + } + cout << '\n'; } int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif untie, cout.tie(NULL); prep(); #ifdef SINGLE_TEST_CASE diff --git a/src/bin/a.out b/src/bin/a.out index 05c2addede4a388eb15289ca7c61c6db274eb6d9..3728b21cdc87bacd1be5e82a96ebd48615445fd3 100755 GIT binary patch literal 1081880 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

g@<+N43rG?1e< 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

n%H%gHuMjz&2ocXR{C<)j~p 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 literal 63256 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 LW16jiEvfxqK@88M diff --git a/src/bin/b.cc b/src/bin/b.cc index 8860206..854c0f1 100644 --- a/src/bin/b.cc +++ b/src/bin/b.cc @@ -1,4 +1,3 @@ -#pragma GCC optimize("Ofast") ///////////////////////////////////////////////////////// /** * Useful Macros @@ -182,6 +181,22 @@ ll inverse(ll a, ll b) { return mod(x, b); } +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + /* string algorithms */ vector calc_next(string t) { // pi function of t int n = (int)t.length(); @@ -242,23 +257,43 @@ void prep() {} void solve() { read(int, n); - readvec(ll, a, n); - for (int i = 1; i < n - 1; ++i) { - if (a[i - 1] < 0) { - cout << "NO\n"; - return; + readvec(ll, a, n + 1); + vector ps(n + 2); + for (int i = 1; i <= n + 1; ++i) { + ps[i] = ps[i - 1] ^ a[i - 1]; + } + vector res(n + 2); + for (int i = 0; i <= n; ++i) { + if (ps[i] == a[i]) { + res[max(0, n - i - 1)] += 1; } - a[i] -= 2 * a[i - 1]; - a[i + 1] -= a[i - 1]; } - if (a[n - 1] != 0 || a[n - 2] != 0) { - cout << "NO\n"; - } else { - cout << "YES\n"; + int ptr = 0; + while (ptr <= n + 1 && res[ptr] == 2) { + res[ptr] = 0; + res[++ptr] += 1; } + int lo = 0; + for (int i = n + 1; ~i; --i) { + if (res[i] == 0) { + if (lo == 0) { + ;; + } else { + cout << 0; + } + } else { + lo = 1; + cout << 1; + } + } + if (lo == 0) cout << 0; + cout << '\n'; } int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif untie, cout.tie(NULL); prep(); #ifdef SINGLE_TEST_CASE diff --git a/src/bin/c.cc b/src/bin/c.cc index 4281a73..85611e2 100644 --- a/src/bin/c.cc +++ b/src/bin/c.cc @@ -1,4 +1,3 @@ -#pragma GCC optimize("Ofast") ///////////////////////////////////////////////////////// /** * Useful Macros @@ -182,6 +181,22 @@ ll inverse(ll a, ll b) { return mod(x, b); } +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + /* string algorithms */ vector calc_next(string t) { // pi function of t int n = (int)t.length(); @@ -233,25 +248,66 @@ int period(string s) { // find the length of shortest recurring period } ///////////////////////////////////////////////////////// -// #define SINGLE_TEST_CASE +#define SINGLE_TEST_CASE // #define DUMP_TEST_CASE 512 void dump() {} void prep() {} -void solve() { - read(int, n); - read(string, a); - int res = 0; - for (int i = 2; i < n; ++i) { - if (a[i - 2] == 'p' && a[i - 1] == 'i' && a[i] == 'e') res += 1; - if (a[i - 2] == 'm' && a[i - 1] == 'a' && a[i] == 'p') res += 1, a[i] = 'x'; +template +struct BIT { + int n; + vector c; + BIT(size_t n) : n(n), c(n + 1) {} + void add(size_t i, const T& k) { + while (i <= n) { + c[i] += k; + i += lowbit(i); + } + } + T getsum(size_t i) { + T res = {}; + while (i) { + res += c[i]; + i -= lowbit(i); + } + return res; + } +}; + +void solve() { + read(int, n, q); + BIT tr(n); + for (int i = 1; i <= n; ++i) { + read(int, x); + tr.add(i, x); + } + while (q--) { + read(int, x, p); + tr.add(x, ll(p) - tr.getsum(x) + tr.getsum(x - 1)); + int l = 0, r = lg2(n); + while (l < r) { + int mid = l + r >> 1; + if (tr.getsum(n - (1 << mid)) == 0) { + r = mid; + } else { + l = mid + 1; + } + } + // debug(l); + if (tr.getsum(n - (1 << l)) != 0) { + cout << (1 << l + 1) << '\n'; + } else { + cout << (1 << l) << '\n'; + } } - cout << res << endl; } int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif untie, cout.tie(NULL); prep(); #ifdef SINGLE_TEST_CASE diff --git a/src/bin/cc-128ba.cc b/src/bin/cc-128ba.cc new file mode 100644 index 0000000..8760e63 --- /dev/null +++ b/src/bin/cc-128ba.cc @@ -0,0 +1,292 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n); + readvec(int, a, n); + sort(a.begin(), a.end()); + ll res = 0; + for (int i = 0; i < n; ++i) { + res += abs(a[i] - i); + } + cout << res << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cc-128bb.cc b/src/bin/cc-128bb.cc new file mode 100644 index 0000000..636e146 --- /dev/null +++ b/src/bin/cc-128bb.cc @@ -0,0 +1,314 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n); + readvec(ll, a, n); + vector mark(n); + ll x = 0; + ll prev = LLONG_MIN; + int cb = 0; + for (int i = 0; i < n; ++i) { + if (a[i] < prev) { + if (cb == 1) { + cout << "No\n"; + return; + } + mark[i] = 1; + cb = 1; + x = max(x, prev - a[i]); + } else { + prev = a[i]; + cb = 0; + } + } + for (int i = 0; i < n; ++i) { + if (mark[i]) a[i] += x; + } + for (int i = 1; i < n; ++i) { + if (a[i] < a[i - 1]) { + cout << "No\n"; + return; + } + } + cout << "Yes\n"; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cc-128bc.cc b/src/bin/cc-128bc.cc new file mode 100644 index 0000000..1151389 --- /dev/null +++ b/src/bin/cc-128bc.cc @@ -0,0 +1,298 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n); + read(string, a); + int cnt_00 = 0, cnt_11 = 0, cnt_01 = 0, cnt_10 = 0; + for (int i = 0; i < n; i += 2) { + string curr = a.substr(i, 2); + if (curr == "00") cnt_00 += 1; + else if (curr == "01") cnt_01 += 1; + else if (curr == "10") cnt_10 += 1; + else cnt_11 += 1; + } + int res = 0; + res = max(res, cnt_00 * 2 + (!!cnt_01) * 2 + cnt_11 * 2 + min(2, cnt_10)); + // res = max(res, (!!cnt_10) + cnt_00 * 2 + (!!cnt_01) * 2) + cnt_11 * 2; + cout << res << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cc-128bd.cc b/src/bin/cc-128bd.cc new file mode 100644 index 0000000..1adcf3e --- /dev/null +++ b/src/bin/cc-128bd.cc @@ -0,0 +1,286 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(ll, x); + cout << (x << 32 | x) << ' ' << x << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cc-128be.cc b/src/bin/cc-128be.cc new file mode 100644 index 0000000..aa4d1a4 --- /dev/null +++ b/src/bin/cc-128be.cc @@ -0,0 +1,325 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +template struct MLL { + ll val; + MLL(ll v = 0) : val(mod(v, mdl)) {} + friend MLL operator+(const MLL& lhs, const MLL& rhs) { return mod(lhs.val + rhs.val, mdl); } + friend MLL operator-(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - rhs.val, mdl); } + friend MLL operator*(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * rhs.val, mdl); } + friend MLL operator/(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * mod(inverse(rhs.val, mdl), mdl), mdl); } + friend MLL operator%(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - (lhs / rhs).val, mdl); } + void operator+=(const MLL& rhs) { val = (*this + rhs).val; } + void operator-=(const MLL& rhs) { val = (*this - rhs).val; } + void operator*=(const MLL& rhs) { val = (*this * rhs).val; } + void operator/=(const MLL& rhs) { val = (*this / rhs).val; } + void operator%=(const MLL& rhs) { val = (*this % rhs).val; } +}; + +template +ostream& operator<<(ostream& out, const MLL& num) { + return out << num.val; +} + +template +istream& operator>>(istream& in, MLL& num) { + return in >> num.val; +} + +void solve() { + using ll = MLL; + read(int, n, m, k); + vector fact; + fact.push_back(1); + for (int i = 1; i <= n; ++i) { + fact.push_back(fact.back() * i); + } + // (M - K + 1) powers + vector pw1; + pw1.push_back(1); + for (int i = 1; i < k; ++i) { + pw1.push_back(pw1.back() * (m - k + 1)); + } + // (K - 1) powers + vector pw2; + for (int i = 1; i < k; ++i) +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cf-1486e.cc b/src/bin/cf-1486e.cc new file mode 100644 index 0000000..65de92f --- /dev/null +++ b/src/bin/cf-1486e.cc @@ -0,0 +1,320 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +#define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n, m); + vector> ch1(n + 1); + while (m--) { + read(int, u, v, w); + ch1[u].emplace_back(v, w); + ch1[v].emplace_back(u, w); + } + vector> ch(n + 1); + for (int v = 1; v <= n; ++v) { + for (auto&& [i, w1] : ch1[v]) { + for (auto&& [u, w2] : ch1[i]) { + if (u == v) continue; + ch[v].emplace_back(u, (w1 + w2) * (w1 + w2)); + ch[u].emplace_back(v, (w1 + w2) * (w1 + w2)); + } + } + } + vector vis(n + 1); + vector dis(n + 1, INFLL); + priority_queue, greater<>> pq; + dis[1] = 0; + pq.emplace(0, 1); + while (pq.size()) { + poptop(pq, d, v); + continue_or(vis[v], 1); + // debug(v); + for (auto&& [u, w] : ch[v]) { + if (d + w < dis[u]) { + dis[u] = d + w; + pq.emplace(dis[u], u); + } + } + } + for (int i = 1; i <= n; ++i) { + cout << (dis[i] == INFLL ? -1 : dis[i]) << " \n"[i == n]; + } +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cf-1526d.cc b/src/bin/cf-1526d.cc new file mode 100644 index 0000000..1feca92 --- /dev/null +++ b/src/bin/cf-1526d.cc @@ -0,0 +1,338 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +constexpr int charset[4] = {'A', 'N', 'O', 'T'}; + +template +struct BIT { + int n; + vector c; + BIT(size_t n) : n(n), c(n + 1) {} + void add(size_t i, const T& k) { + while (i <= n) { + c[i] += k; + i += lowbit(i); + } + } + T getsum(size_t i) { + T res = {}; + while (i) { + res += c[i]; + i -= lowbit(i); + } + return res; + } +}; + +void solve() { + read(string, a); + int n = a.size(); + unordered_map, safe_hash> oc; + for (int i = 0; i < n; ++i) { + oc[a[i]].push_back(i);; + } + string res; + BIT occ(n); + for (int i = 0; i < n; ++i) { + char mx; + int mx_v = -1; + for (auto&& c : charset) { + if (oc[c].size() && oc[c].front() - occ.getsum(oc[c].front()) > mx_v) { + mx_v = oc[c].front() - occ.getsum(oc[c].front()); + mx = c; + } + } + assert(mx_v != -1); + debug(i), debug(mx), debug(mx_v); + cerr << "oc = "; + for (auto&& [u, v] : oc) { + cerr << "{" << u << ", "; + for (auto&& x : v) cerr << x << ' '; + cerr << "}, "; + } + cerr << endl; + res.push_back(mx); + oc[mx].pop_front(); + occ.add(oc[mx].front(), 1); + } + cout << res << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/cf-1530e.cc b/src/bin/cf-1530e.cc new file mode 100644 index 0000000..cc892eb --- /dev/null +++ b/src/bin/cf-1530e.cc @@ -0,0 +1,410 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(string, a); + int n = a.size(); + array slot {}; + for (auto&& x : a) slot[x - 97] += 1; + int uq = 26 - count(slot.begin(), slot.end(), 0); + auto check = [&] (int k) -> optional { + // only if uq >= 3 + cerr << "Checking k = " << k << endl; + for (int i = 0; i < 26; ++i) { + if (!slot[i]) continue; + debug(i); + array slot1 = slot; + string res; + char mark = -1; + while (slot1[i]) { + int use = min(slot1[i], k + 1); + slot1[i] -= use; + res += string(use, char(i + 97)); + if (res.size() == n) break; + int f = 0; + for (int j = 0; j < 26; ++j) { + if (slot1[j] && j != mark && j != i) { + res.push_back(j + 97); + --slot1[j]; + if (mark == -1) { + mark = j; + } + f = 1; + break; + } + } + if (f == 0) { + goto fi; + } + } + for (int j = 0; j < 26; ++j) { + if (slot1[j]) res += string(slot1[j], char(j + 97)); + } + assert(res.size() == n); + return res; + fi: + ;; + } + return nullopt; + }; + char x = -1, y = -1; + auto check2 = [&] (int k, char x, char y) -> optional { + for (int i = 0; i < 2; ++i) { + string res; + int cb = 0; + array slot1 = slot; + if (slot[x] < k + 1) { + res = string(slot[x], x + 97) + string(slot[y], y + 97); + return res; + } else { + res = string(k + 1, x + 97); + slot1[x] -= k + 1; + cb = k; + int flag = 1; + for (int i = k + 1; i < n; ++i) { + if (cb == k) { + if (!slot1[y]) { + flag = 0; + break; + } else { + --slot1[y]; + res.push_back(y + 97); + cb = 0; + } + } else { + if (!slot1[x]) { + assert(slot1[y]); + --slot1[y]; + res.push_back(y + 97); + cb = 0; + } else { + --slot1[x]; + res.push_back(x + 97); + cb += 1; + } + } + } + if (flag) { + assert(res.size() == n); + return res; + } + } + swap(x, y); + } + return nullopt; + }; + if (uq == 1) { + cout << a << '\n'; + return; + } else if (uq == 2) { + for (int i = 0; i < 26; ++i) { + if (!slot[i]) continue; + if (x != -1) { + y = i; + break; + } else { + x = i; + } + } + int l = 0, r = n; + while (l < r) { + int mid = l + r >> 1; + if (check2(mid, x, y) != nullopt) { + r = mid; + } else { + l = mid + 1; + } + } + cout << check2(l, x, y).value() << '\n'; + return; + } + int l = 0, r = n; + while (l < r) { + int mid = l + r >> 1; + if (check(mid) != nullopt) { + r = mid; + } else { + l = mid + 1; + } + } + cout << check(l).value() << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/codefun-1792.cc b/src/bin/codefun-1792.cc new file mode 100644 index 0000000..846206c --- /dev/null +++ b/src/bin/codefun-1792.cc @@ -0,0 +1,300 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +// #define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n); + priority_queue pq; + while (n--) { + read(int, x); + pq.emplace(x); + } + ll res = 0; + while (pq.size()) { + ll x = pq.top(); pq.pop(); + if (x == 0) continue; + int v = 63 - __builtin_clzll(x); + res |= 1LL << v; + x ^= 1LL << v; + pq.push(x); + } + cout << res << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/codefun-1793.cc b/src/bin/codefun-1793.cc new file mode 100644 index 0000000..3d35430 --- /dev/null +++ b/src/bin/codefun-1793.cc @@ -0,0 +1,291 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +#define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n, k); + unordered_set st; + while (n--) { + read(int, x); + st.emplace(x); + } + cout << min(ull(k), st.size()) << '\n'; +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/codefun-1794.cc b/src/bin/codefun-1794.cc new file mode 100644 index 0000000..753e723 --- /dev/null +++ b/src/bin/codefun-1794.cc @@ -0,0 +1,296 @@ +#pragma GCC optimize("Ofast") +///////////////////////////////////////////////////////// +/** + * Useful Macros + * by subcrip + * (requires C++17) + */ + +#include +using namespace std; + +/* macro helpers */ +#define __NARGS(...) std::tuple_size::value +#define __DECOMPOSE_S(a, x) auto x = a; +#define __DECOMPOSE_N(a, ...) auto [__VA_ARGS__] = a; +constexpr void __() {} +#define __AS_PROCEDURE(...) __(); __VA_ARGS__; __() +#define __as_typeof(container) decltype(container)::value_type + +/* type aliases */ +using ll = int64_t; +using ull = uint64_t; +using pii = pair; +using pil = pair; +using pli = pair; +using pll = pair; + +/* constants */ +constexpr int INF = 0x3f3f3f3f; +constexpr ll INFLL = 0x3f3f3f3f3f3f3f3fLL; +constexpr ll MDL = 1e9 + 7; +constexpr ll PRIME = 998'244'353; +constexpr ll MDL1 = 8784491; +constexpr ll MDL2 = PRIME; + +/* random */ + +mt19937 rd(chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count()); + +/* bit-wise operations */ +#define lowbit(x) ((x) & -(x)) +#define popcount(x) (__builtin_popcountll(ll(x))) +#define parity(x) (__builtin_parityll(ll(x))) +#define msp(x) (63LL - __builtin_clzll(ll(x))) +#define lsp(x) (__builtin_ctzll(ll(x))) + +/* arithmetic operations */ +#define mod(x, y) ((((x) % (y)) + (y)) % (y)) + +/* fast pairs */ +#define upair ull +#define umake(x, y) (ull(x) << 32 | (ull(y) & ((1ULL << 32) - 1))) +#define u1(p) ((p) >> 32) +#define u2(p) ((p) & ((1ULL << 32) - 1)) +#define ult std::less +#define ugt std::greater + +#define ipair ull +#define imake(x, y) (umake(x, y)) +#define i1(p) (int(u1(ll(p)))) +#define i2(p) (ll(u2(p) << 32) >> 32) +struct ilt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) < i2(b); + else return i1(a) < i1(b); + } +}; +struct igt { + bool operator()(const ipair& a, const ipair& b) const { + if (i1(a) == i1(b)) return i2(a) > i2(b); + else return i1(a) > i1(b); + } +}; + +/* conditions */ +#define loop while (1) +#define if_or(var, val) if (!(var == val)) var = val; else +#define continue_or(var, val) __AS_PROCEDURE(if (var == val) continue; var = val;) +#define break_or(var, val) __AS_PROCEDURE(if (var == val) break; var = val;) + +/* hash */ +struct safe_hash { + // https://codeforces.com/blog/entry/62393 + static uint64_t splitmix64(uint64_t x) { + // http://xorshift.di.unimi.it/splitmix64.c + x += 0x9e3779b97f4a7c15; + x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; + x = (x ^ (x >> 27)) * 0x94d049bb133111eb; + return x ^ (x >> 31); + } + + size_t operator()(uint64_t x) const { + static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count(); + return splitmix64(x + FIXED_RANDOM); + } +}; + +struct pair_hash { + template + size_t operator()(const pair& a) const { + auto hash1 = safe_hash()(a.first); + auto hash2 = safe_hash()(a.second); + if (hash1 != hash2) { + return hash1 ^ hash2; + } + return hash1; + } +}; + +/* build data structures */ +#define unordered_counter(from, to) __AS_PROCEDURE(unordered_map<__as_typeof(from), size_t, safe_hash> to; for (auto&& x : from) ++to[x];) +#define counter(from, to, cmp) __AS_PROCEDURE(map<__as_typeof(from), size_t, cmp> to; for (auto&& x : from) ++to[x];) +#define pa(a) __AS_PROCEDURE(__typeof(a) pa; pa.push_back({}); for (auto&&x : a) pa.push_back(pa.back() + x);) +#define sa(a) __AS_PROCEDURE(__typeof(a) sa(a.size() + 1); {int n = a.size(); for (int i = n - 1; i >= 0; --i) sa[i] = sa[i + 1] + a[i];};) +#define adj(ch, n) __AS_PROCEDURE(vector> ch((n) + 1);) +#define edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v), ch[v].push_back(u);) +#define Edge(ch, u, v) __AS_PROCEDURE(ch[u].push_back(v);) +template pair> discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} +template pair> unordered_discretize(Iterator __first, Iterator __last) { + set st(__first, __last); + size_t N = 0; + unordered_map mp; + for (auto&& x : st) mp[x] = ++N; + return {N, mp}; +} + +/* io */ +#define untie __AS_PROCEDURE(ios_base::sync_with_stdio(0), cin.tie(NULL)) +template void __read(T& x) { cin >> x; } +template void __read(T& x, U&... args) { cin >> x; __read(args...); } +#define read(type, ...) __AS_PROCEDURE(type __VA_ARGS__; __read(__VA_ARGS__);) +#define readvec(type, a, n) __AS_PROCEDURE(vector a(n); for (int i = 0; i < (n); ++i) cin >> a[i];) +#define putvec(a) __AS_PROCEDURE(for (auto&& x : a) cout << x << ' '; cout << endl;) +#define debug(x) __AS_PROCEDURE(cerr << #x" = " << (x) << endl;) +#define debugvec(a) __AS_PROCEDURE(cerr << #a" = "; for (auto&& x : a) cerr << x << ' '; cerr << endl;) +template ostream& operator<<(ostream& out, const pair& p) { + out << "{" << p.first << ", " << p.second << "}"; + return out; +} +template +void print_tuple_impl(std::basic_ostream& os, const Tuple& t, std::index_sequence) { + using swallow = int[]; // guaranties left to right order + (void)swallow { 0, (void(os << (Index == 0 ? "" : ", ") << std::get(t)), 0)... }; +} +template +decltype(auto) operator<<(std::basic_ostream& os, const std::tuple& t) { + os << "{"; + print_tuple_impl(os, t, std::index_sequence_for{}); + return os << "}"; +} +template ostream& operator<<(ostream& out, const vector& vec) { + for (auto&& i : vec) out << i << ' '; + return out; +} + +/* pops */ +#define poptop(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.top(); q.pop();) +#define popback(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.back(); q.pop_back();) +#define popfront(q, ...) __AS_PROCEDURE(auto [__VA_ARGS__] = q.front();q.pop_front();) + +/* math */ +constexpr inline int lg2(ll x) { return x == 0 ? -1 : sizeof(ll) * 8 - 1 - __builtin_clzll(x); } + +void __exgcd(ll a, ll b, ll& x, ll& y) { + if (b == 0) { + x = 1, y = 0; + return; + } + __exgcd(b, a % b, y, x); + y -= a / b * x; +} + +ll inverse(ll a, ll b) { + ll x, y; + __exgcd(a, b, x, y); + return mod(x, b); +} + +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + +/* string algorithms */ +vector calc_next(string t) { // pi function of t + int n = (int)t.length(); + vector pi(n); + for (int i = 1; i < n; i++) { + int j = pi[i - 1]; + while (j > 0 && t[i] != t[j]) j = pi[j - 1]; + if (t[i] == t[j]) j++; + pi[i] = j; + } + return pi; +} +vector calc_z(string t) { // z function of t + int m = t.length(); + vector z; + z.push_back(m); + pair prev = {1, -1}; + for (int i = 1; i < m; ++i) { + if (z[i - prev.first] + i <= prev.second) { + z.push_back(z[i - prev.first]); + } else { + int j = max(i, prev.second + 1); + while (j < m && t[j] == t[j - i]) ++j; + z.push_back(j - i); + prev = {i, j - 1}; + } + } + return z; +} +vector kmp(string s, string t) { // find all t in s + string cur = t + '#' + s; + int sz1 = s.size(), sz2 = t.size(); + vector v; + vector lps = calc_next(cur); + for (int i = sz2 + 1; i <= sz1 + sz2; i++) { + if (lps[i] == sz2) v.push_back(i - 2 * sz2); + } + return v; +} +int period(string s) { // find the length of shortest recurring period + int n = s.length(); + auto z = calc_z(s); + for (int i = 1; i <= n / 2; ++i) { + if (n % i == 0 && z[i] == n - i) { + return i; + } + } + return n; +} +///////////////////////////////////////////////////////// + +#define SINGLE_TEST_CASE +// #define DUMP_TEST_CASE 512 + +void dump() {} + +void prep() {} + +void solve() { + read(int, n); + readvec(ll, a, n); + vector res; + int next = 0; + for (int i = 0; i < n - 1; i = next) { + next = i + 1; + while (next < n - 1 && a[next] > a[i]) ++next; + res.push_back(a[i] * (next - i)); + for (int j = 0; j < next - i - 1; ++j) res.push_back(0); + } + res.push_back(0); + putvec(res); +} + +int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif + untie, cout.tie(NULL); + prep(); +#ifdef SINGLE_TEST_CASE + solve(); +#else + read(int, t); + for (int i = 0; i < t; ++i) { +#ifdef DUMP_TEST_CASE + if (i + 1 == (DUMP_TEST_CASE)) { + dump(); + } else { + solve(); + } +#else + solve(); +#endif + } +#endif +} diff --git a/src/bin/d.cc b/src/bin/d.cc index b509a74..80fae64 100644 --- a/src/bin/d.cc +++ b/src/bin/d.cc @@ -1,4 +1,3 @@ -#pragma GCC optimize("Ofast") ///////////////////////////////////////////////////////// /** * Useful Macros @@ -182,6 +181,22 @@ ll inverse(ll a, ll b) { return mod(x, b); } +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + /* string algorithms */ vector calc_next(string t) { // pi function of t int n = (int)t.length(); @@ -233,38 +248,90 @@ int period(string s) { // find the length of shortest recurring period } ///////////////////////////////////////////////////////// -// #define SINGLE_TEST_CASE +#define SINGLE_TEST_CASE // #define DUMP_TEST_CASE 512 void dump() {} void prep() {} +template struct MLL { + ll val; + MLL(ll v = 0) : val(mod(v, mdl)) {} + friend MLL operator+(const MLL& lhs, const MLL& rhs) { return mod(lhs.val + rhs.val, mdl); } + friend MLL operator-(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - rhs.val, mdl); } + friend MLL operator*(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * rhs.val, mdl); } + friend MLL operator/(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * mod(inverse(rhs.val, mdl), mdl), mdl); } + friend MLL operator%(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - (lhs / rhs).val, mdl); } + void operator+=(const MLL& rhs) { val = (*this + rhs).val; } + void operator-=(const MLL& rhs) { val = (*this - rhs).val; } + void operator*=(const MLL& rhs) { val = (*this * rhs).val; } + void operator/=(const MLL& rhs) { val = (*this / rhs).val; } + void operator%=(const MLL& rhs) { val = (*this % rhs).val; } +}; + +template +ostream& operator<<(ostream& out, const MLL& num) { + return out << num.val; +} + +template +istream& operator>>(istream& in, MLL& num) { + return in >> num.val; +} + void solve() { - read(int, n, m, x); - vector> dp(m + 1, vector(n)); - dp[0][x - 1] = 1; - for (int i = 1; i <= m; ++i) { - read(int, r), read(char, op); - if (op != '1') { - for (int j = 0; j < n; ++j) { - if (dp[i - 1][j]) dp[i][mod(j + r, n)] = 1; - } - } - if (op != '0') { - for (int j = 0; j < n; ++j) { - if (dp[i - 1][j]) dp[i][mod(j - r, n)] = 1; - } + using ll = MLL; + read(int, n); + vector> ch(n + 1); + for (int i = 0; i < n - 1; ++i) { + read(int, u, v); + ch[u].emplace_back(v, i); + ch[v].emplace_back(u, i); + } + read(ll, e); + int root = -1; + int root_edge; + for (int i = 1; i <= n; ++i) { + if (ch[i].size() == 1) { + root = i; + root_edge = ch[i][0].second; + break; } } - cout << count(dp[m].begin(), dp[m].end(), 1) << "\n"; - for (int i = 0; i < n; ++i) { - if (dp[m][i]) cout << i + 1 << ' '; + if (root == -1) { + cout << -1 << '\n'; + return; + } + vector dis(n + 1); + auto dfs = [&] (auto dfs, int v, int pa, int d) -> void { + dis[v] = d; + for (auto&& [u, _] : ch[v]) { + if (u == pa) continue; + dfs(dfs, u, v, d + 1); + } + }; + dfs(dfs, root, 0, 0); + ll res = accumulate(dis.begin(), dis.end(), ll(0)) + *max_element(dis.begin(), dis.end()); + ll target = e * n; + ll tar = (target - res) / n + 1; + int64_t tar_val = tar.val; + if (tar_val <= n + 2) { + tar_val += PRIME; + } + for (int i = 0; i < n - 1; ++i) { + if (i == root_edge) { + cout << tar_val << '\n'; + } else { + cout << 1 << '\n'; + } } - cout << "\n"; } int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif untie, cout.tie(NULL); prep(); #ifdef SINGLE_TEST_CASE diff --git a/src/bin/e.cc b/src/bin/e.cc index a82f742..aa4d1a4 100644 --- a/src/bin/e.cc +++ b/src/bin/e.cc @@ -182,6 +182,22 @@ ll inverse(ll a, ll b) { return mod(x, b); } +vector> decompose(ll x) { + vector> res; + for (int i = 2; i * i <= x; i++) { + if (x % i == 0) { + int cnt = 0; + ll pw = 1; + while (x % i == 0) ++cnt, x /= i, pw *= i; + res.emplace_back(i, cnt, pw); + } + } + if (x != 1) { + res.emplace_back(x, 1, x); + } + return res; +} + /* string algorithms */ vector calc_next(string t) { // pi function of t int n = (int)t.length(); @@ -233,24 +249,61 @@ int period(string s) { // find the length of shortest recurring period } ///////////////////////////////////////////////////////// -#define SINGLE_TEST_CASE +// #define SINGLE_TEST_CASE // #define DUMP_TEST_CASE 512 void dump() {} void prep() {} -void solve() { - read(int, n); - read(string, a); - for (int i = 0; i < n; ++i) { - for (int j = i + 1; j < n; ++j) { +template struct MLL { + ll val; + MLL(ll v = 0) : val(mod(v, mdl)) {} + friend MLL operator+(const MLL& lhs, const MLL& rhs) { return mod(lhs.val + rhs.val, mdl); } + friend MLL operator-(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - rhs.val, mdl); } + friend MLL operator*(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * rhs.val, mdl); } + friend MLL operator/(const MLL& lhs, const MLL& rhs) { return mod(lhs.val * mod(inverse(rhs.val, mdl), mdl), mdl); } + friend MLL operator%(const MLL& lhs, const MLL& rhs) { return mod(lhs.val - (lhs / rhs).val, mdl); } + void operator+=(const MLL& rhs) { val = (*this + rhs).val; } + void operator-=(const MLL& rhs) { val = (*this - rhs).val; } + void operator*=(const MLL& rhs) { val = (*this * rhs).val; } + void operator/=(const MLL& rhs) { val = (*this / rhs).val; } + void operator%=(const MLL& rhs) { val = (*this % rhs).val; } +}; - } +template +ostream& operator<<(ostream& out, const MLL& num) { + return out << num.val; +} + +template +istream& operator>>(istream& in, MLL& num) { + return in >> num.val; +} + +void solve() { + using ll = MLL; + read(int, n, m, k); + vector fact; + fact.push_back(1); + for (int i = 1; i <= n; ++i) { + fact.push_back(fact.back() * i); } + // (M - K + 1) powers + vector pw1; + pw1.push_back(1); + for (int i = 1; i < k; ++i) { + pw1.push_back(pw1.back() * (m - k + 1)); + } + // (K - 1) powers + vector pw2; + for (int i = 1; i < k; ++i) } int main() { +#if __cplusplus < 201703L || defined(_MSC_VER) && !defined(__clang__) + assert(false && "incompatible compiler variant detected."); +#endif untie, cout.tie(NULL); prep(); #ifdef SINGLE_TEST_CASE diff --git a/src/bin/std.in b/src/bin/std.in index 982b390..b4498a0 100644 --- a/src/bin/std.in +++ b/src/bin/std.in @@ -1,13 +1,4 @@ -6 7 -2 1 -2 3 -3 5 -1 4 -6 1 -5 6 -4 5 3 -1 4 -5 1 -4 5 - +1 2 +2 3 +665496238 diff --git a/src/bin/template.cc b/src/bin/template.cc index b8600e9..f28bb5f 100644 --- a/src/bin/template.cc +++ b/src/bin/template.cc @@ -249,7 +249,7 @@ int period(string s) { // find the length of shortest recurring period } ///////////////////////////////////////////////////////// -#define SINGLE_TEST_CASE +// #define SINGLE_TEST_CASE // #define DUMP_TEST_CASE 512 void dump() {} @@ -257,6 +257,7 @@ void dump() {} void prep() {} void solve() { + } int main() { diff --git a/src/bin/test.py b/src/bin/test.py index 96ab481..17c982d 100644 --- a/src/bin/test.py +++ b/src/bin/test.py @@ -1,4 +1,10 @@ -from random import randint -print(500000) -for i in range(500000): - print(randint(7800000, 7900000)) +def diff(a, b): + n = len(a) + res = 0 + for i in range(n): + if a[i] != b[i]: + for j in range(i + 1, n): + if b[j] == a[i]: + res += j - i + b = b[:i] + b[j] + b[i+1:j] + b[j+1:] + return res diff --git a/src/bin/test1.py b/src/bin/test1.py new file mode 100644 index 0000000..e4c2bd3 --- /dev/null +++ b/src/bin/test1.py @@ -0,0 +1,11 @@ +def diff(a, b): + n = len(a) + res = 0 + for i in range(n): + if a[i] != b[i]: + for j in range(i + 1, n): + if b[j] == a[i]: + res += j - i + b = b[:i] + b[j] + b[i:j] + b[j+1:] + break + return res