Time Limit Exceeded
查看原帖
Time Limit Exceeded
1165586
lizishi楼主2024/7/29 23:10
#include <iostream>

#define cap 1000000000000
#define ll long long

using namespace std;

ll max(ll a[], int n, int k, int l) {
    int r = l + k - 1;
    ll max_ = (-1) * cap;
    for (int i = l; i <= r; i++) {
        if (max_ < a[i]) max_ = a[i];
    }
    return max_;
}

ll min(ll a[], int n, int k, int l) {
    int r = l + k - 1;
    ll min_ = cap;
    for (int i = l; i <= r; i++) {
        if (min_ > a[i]) min_ = a[i];
    }
    return min_;
}

int main() {
    int n, k;
    cin >> n >> k;
    ll a[n];
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    for (int i = 0; i <= n - k; i++) {
        cout << min(a, n, k, i) << ' ';
    }
    cout << endl;
    for (int i = 0; i <= n - k; i++) {
        cout << max(a, n, k, i) << ' ';
    }
    return 0;
}

最坏时间复杂度:O(nk−k2)=O(nk)最坏时间复杂度:O(nk - k^2) = O(nk) 输入:1000000输入:1000000 500000500000 1<repeat1<repeat 10000001000000 times>times>

输出:Time输出:Time LimitLimit Exceeded.Exceeded. 正确输出:1<repeat正确输出:1<repeat ?????? times>times> 时间复杂度要求:O(n)时间复杂度要求:O(n)

求助求助 lollol QwQQwQ troll:)troll:)

2024/7/29 23:10
加载中...