Submission #1334024

#TimeUsernameProblemLanguageResultExecution timeMemory
1334024kawhietHorses (IOI15_horses)C++20
17 / 100
1596 ms16080 KiB
#include <bits/stdc++.h>
#include "horses.h"
using namespace std;

using i64 = long long;

constexpr int mod = 1e9 + 7;

int n;
vector<int> x, y;

vector<i64> p, a;

int solve() {
    p[0] = x[0];
    a[0] = x[0] * y[0] % mod;
    for (int i = 1; i < n; i++) {
        p[i] = p[i - 1] * x[i] % mod;
        a[i] = p[i] * y[i] % mod;
    }
    return ranges::max(a);
}

int init(int N, int X[], int Y[]) {
    n = N;
    x.assign(X, X + N);
    y.assign(Y, Y + N);
    p.resize(n);
    a.resize(n);
    return solve();
}

int updateX(int pos, int val) {
    x[pos] = val;
    return solve();
}

int updateY(int pos, int val) {
    y[pos] = val;
    return solve();
}
#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...