阅读程序(3) 13-18题 组合题 #include 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 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 > a[i]; for (int i = 0; i > b[i]; cout << f(0, n - 1, 1) << endl; return 0; }
正确答案:判断题答案B。a数组有重复不会导致运行错误,故错误。
试卷来源:2019 CSP-J入门级(第一轮)C++真题