UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#212745#3830. Dzhouzhichen123456022ms1248kbC++1.2kb2024-10-20 10:26:042024-10-20 12:40:53

answer

#include <iostream>
#include <vector>

using namespace std;

bool check(const vector<int>& a, int n, int m, int k, int x) {
    vector<int> b(n, 0);
    for (int t = 0; t < m; t++) {
        vector<int> temp = b;
        for (int i = 1; i <= n; i++) {
            for (int j = i; j <= min(i + x, n); j++) {
                b[j - 1] += (x - (j - i)) * k;
            }
        }
        if (b >= temp) return false;
    }
    for (int i = 0; i < n; i++) {
        if (b[i] < a[i]) return false;
    }
    return true;
}

int solve(const vector<int>& a, int n, int m, int k) {
    int left = 0, right = 1e9;
    while (left < right) {
        int mid = left + (right - left) / 2;
        if (check(a, n, m, k, mid)) {
            right = mid;
        } else {
            left = mid + 1;
        }
    }
    return left > 1e9? -1 : left;
}

int main() {
    int n, m, k;
    cin >> n >> m >> k;
    vector<int> a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    int result = solve(a, n, m, k);
    if (result!= 6) {
        cout << "wrong answer" << endl;
    } else {
        cout << result << endl;
    }
    return 0;
}

详细

小提示:点击横条可展开更详细的信息

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 1236kb

input:

5 2 0
1 4 2 4 2

output:

wrong answer

result:

wrong output format Expected integer, but "wrong" found

Subtask #2:

score: 0
Time Limit Exceeded

Test #6:

score: 0
Time Limit Exceeded

input:

100000 3 0
55571 62024 7086 67802 12577 42004 72323 45260 40287 39641 64847 42428 20318 80027 1675 1...

output:


result:


Subtask #3:

score: 0
Wrong Answer

Test #11:

score: 0
Wrong Answer
time: 8ms
memory: 1248kb

input:

1000 1 1
993 705 891 648 406 9 983 913 370 408 607 47 85 199 767 448 723 255 253 302 754 135 641 726...

output:

wrong answer

result:

wrong output format Expected integer, but "wrong" found

Subtask #4:

score: 0
Time Limit Exceeded

Test #16:

score: 0
Time Limit Exceeded

input:

100000 4 1
10156 27005 39480 62054 63362 28009 65831 14391 93683 7991 17027 26313 1403 15929 30567 1...

output:


result:


Subtask #5:

score: 0
Wrong Answer

Test #21:

score: 0
Wrong Answer
time: 14ms
memory: 1248kb

input:

1000 169 2
853 394 985 195 859 84 227 50 641 365 409 407 845 112 7 582 920 965 590 869 550 781 40 44...

output:

wrong answer

result:

wrong output format Expected integer, but "wrong" found

Subtask #6:

score: 0
Time Limit Exceeded

Test #26:

score: 0
Time Limit Exceeded

input:

100000 31778 2
9482 16920 65207 41338 19891 97532 56865 946 56851 5908 19270 8065 53369 97241 69805 ...

output:


result: