Submission #1161138

#TimeUsernameProblemLanguageResultExecution timeMemory
1161138justHexagonal Territory (APIO21_hexagon)C++20
9 / 100
1257 ms412 KiB
#include "bits/stdc++.h"
using namespace std;

#define int long long
#define vec vector

const int MOD = 1e9 + 7;

int calc(int N, int A, int B, vec<int> directions, vec<int> lengths) {
    assert(N == 3);

    int len = lengths[0] + 1;
    int sum = (len * (len + 1)) / 2;
    sum %= MOD;
    sum *= A;
    sum %= MOD;

    for (int i = 1; i <= len; i++) {
        sum += (i * (i - 1) % MOD) * B % MOD;
        sum %= MOD;
    }
    return sum;
}

signed draw_territory(signed N, signed A, signed B, vec<signed> D, vec<signed> L) {
    vec<int> d(N), l(N);
    for (int i = 0; i < N; i++) {
        d[i] = D[i];
        l[i] = L[i];
    }
    return calc(N, A, B, d, l);
}

#ifdef debug
signed main() {
    int t;
    cin >> t;

    while (t--) {
        int n, a, b;
        cin >> n >> a >> b;

        vector<int> d(n), l(n);
        for (int i = 0; i < n; i++)
            cin >> d[i] >> l[i];

        cout << calc(n, a, b, d, l) << endl;
    }
}
#endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...