• KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200)(AB水题,C思维,D搜索,E DP)


    补题链接:Here

    A - Century

    整除 (200) 并且判断能否整除完全

    B - 200th ABC-200

    按题意即可

    C - Ringo's Favorite Numbers 2

    求出 (A_i - A_j) 为 200 的倍数的个数,转化为贡献值即可

    using ll = long long;
    void solve() {
        ll ans = 0;
        int n, a[210] = {0};
        cin >> n;
        for (ll i = 1, x; i <= n; ++i) {
            cin >> x;
            x %= 200;
            ans += a[x];
            a[x]++;
        }
        cout << ans << '
    ';
    }
    

    D - Happy Birthday! 2

    搜索情况

    int n, a[205];
    vector<int> c[205], b;
    void dfs(int x, int sum) {
        if (c[sum].size() && b != c[sum]) {
            cout << "Yes
    ";
            cout << b.size() << ' ';
            for (int i : b) cout << i << ' ';
            cout << "
    ";
            cout << c[sum].size() << ' ';
            for (int i : c[sum]) cout << i << ' ';
            cout << "
    ";
            exit(0);
        } else if (b.size())
            c[sum] = b;
        if (x == n + 1) return;
        dfs(x + 1, sum);
        b.push_back(x), dfs(x + 1, (sum + a[x]) % 200), b.pop_back();
    }
    
    void solve() {
        cin >> n;
        for (int i = 1; i <= n; ++i) cin >> a[i];
        dfs(1, 0);
        cout << "No
    ";
    }
    

    E - Patisserie ABC 2

    DP

    using ll    = long long;
    const int N = 3e6 + 10;
    ll f[4][N];
    void solve() {
        ll n, k;
        cin >> n >> k;
        f[0][0] = 1;
        for (int i = 1; i <= 3; i++)
            for (int j = 1; j <= 3 * n; j++)
                f[i][j] = f[i][j - 1] + f[i - 1][j - 1] - (j > n ? f[i - 1][j - 1 - n] : 0);
    
        ll s;
        for (s = 3; k > f[3][s]; s++)
            k -= f[3][s];
    
        for (int i = 2, v; i >= 1; i--) {
            for (v = 1; k > f[i][s - v]; v++)
                k -= f[i][s - v];
            cout << v << " ";
            s -= v;
        }
        cout << s << "
    ";
    }
    

    The desire of his soul is the prophecy of his fate
    你灵魂的欲望,是你命运的先知。

  • 相关阅读:
    HTTP 方法
    Nodejs 使用 bcrypt 库加密和验证密码
    Flutter 获取本地图片并剪切
    Flutter: 矩形边框
    [bzoj1385]Division expression
    项目中常用方法总结(将将DataTable数据集映射到实体对象)【转】
    hdu1010:Tempter of the Bone(dfs)
    hdu1010:Tempter of the Bone(dfs)
    BZOJ 2820 YY的GCD
    算法的封装与切换—策略模式(四)
  • 原文地址:https://www.cnblogs.com/RioTian/p/14756244.html
Copyright © 2020-2023  润新知