int findInc(int* arr, int len) {
if (!arr || !len) {
return 0;
}
int* count = new int[len];
int sum = 0;
for (int i = 0; i < len; ++i) {
count[i] = 0;
for (int j = i; j >= 0; --j) {
if (arr[i] > arr[j]) {
//通过j到达i + 直接到i
count[i] += count[j] + 1;
}
}
sum += count[i];
}
delete[] count;
return sum;
}
对于一个数组{1,2,3}它的子数组有{1,2},{1,3}{2,3},{1,2,3},元素之间可以不是连续的,对于数组{5,9,1,7,2,6,3,8,10,4},升序子序列有多少个?
最新推荐文章于 2022-11-24 11:04:53 发布