← 查看本卷题目
组合题6 个小题
已作答 0 / 6
#include <iostream>using namespace std;const int maxn = 10000;int n;int a[maxn];int b[maxn];int f(int l, int r, int depth) {    if (l > r)        return 0;    int min = maxn, mink;    for (int i = l; i <= r; ++i) {        if (min > a[i]) {            min = a[i];            mink = i;        }    }    int lres = f(l, mink - 1, depth + 1);    int rres = f(mink + 1, r, depth + 1);    return lres + rres + depth * b[mink];}int main() {    cin >> n;    for (int i = 0; i < n; ++i)        cin >> a[i];    for (int i = 0; i < n; ++i)        cin >> b[i];    cout << f(0, n - 1, 1) << endl;    return 0;}
第 28 题单选题原卷 1.5 分

如果 aa 数组有重复的数字,则程序运行时会发生错误。()

填写答案