全部评论 10

  • 终于找到一个认识的...

    2026-02-10 来自 广东

    4
  • ok

    2026-01-29 来自 浙江

    4
  • 谢谢

    2026-01-23 来自 浙江

    3
  • 1

    2026-03-19 来自 浙江

    2
  • 4天前 来自 浙江

    0
  • #include <bits/stdc++.h>
    using namespace std;

    using ll = long long;

    using pi = pair<int, int>;
    #define mp make_pair
    #define f first
    #define s second

    using vi = vector<int>;
    #define sz(x) int((x).size())
    #define all(x) begin(x), end(x)
    #define sor(x) sort(all(x))
    #define pb push_back
    #define bk back()

    const int MOD = 1e9 + 7;

    template <class T> void remDup(vector<T> &v) {
    sort(all(v));
    v.erase(unique(all(v)), end(v));
    }

    struct mi {
    int v;
    explicit operator int() const { return v; }
    mi() : v(0) {}
    mi(ll _v) : v(int(_v % MOD)) { v += (v < 0) * MOD; }
    };
    mi &operator+=(mi &a, mi b) {
    if ((a.v += b.v) >= MOD)
    a.v -= MOD;
    return a;
    }
    mi operator+(mi a, mi b) { return a += b; }

    const int HASHMAX = 16 * 1000;
    struct Table {
    mi vals[HASHMAX];
    bitset<HASHMAX> visited;
    vi keys;
    void addTo(int key, mi v) {
    if (visited[key] == 0) {
    visited[key] = 1;
    keys.pb(key);
    }
    vals[key] += v;
    }
    void reset() {
    for (const auto &u : keys) {
    vals[u] = 0;
    visited[u] = 0;
    }
    keys.clear();
    }
    };

    vector<vi> good_subs;
    bool is_good_new_set[100005];

    void genGoodSubs() {
    for (int i = 1; i <= 9; i++) {
    good_subs.pb({i});
    }
    for (int i = 1; i + 3 <= 9; i++) {
    good_subs.pb({i, i + 3});
    }

    for (int i = 1; i <= 2; i++) {
    for (int j = 0; j <= 6; j += 3) {
    int first_val = i + j;
    good_subs.pb({first_val, first_val + 1});
    }
    }

    for (int i = 1; i <= 2; i++) {
    for (int j = 0; j <= 3; j += 3) {
    vi v;
    for (int k = 0; k <= 1; k++) {
    for (int l = 0; l <= 3; l += 3) {
    v.pb(i + j + k + l);
    }
    }
    sor(v);
    good_subs.pb(v);
    }
    }

    for (auto u : good_subs) {
    int mask = 0;
    for (auto x : u) {
    mask += 1 << x;
    }
    is_good_new_set[mask] = 1;
    }
    }

    void solve() {
    string S_inp;
    cin >> S_inp;
    vi S{-100};
    for (auto u : S_inp) {
    S.pb(u - '0');
    }

    int N = sz(S) - 1;

    vector<vi> S_masks = vector<vi>(N + 1,

    1周前 来自 浙江

    0
  • 1周前 来自 福建

    0
  • 谢谢

    1周前 来自 浙江

    0
  • hi

    2026-03-24 来自 浙江

    0
  • KEPDOEKDE

    2026-03-24 来自 浙江

    0
暂无数据

提交答案之后,这里将显示提交结果~

首页