代码:
class Solution {
public:
int longestMountain(vector<int>& A) {
int max_length = 0, index = 0;
while(index + 1 < A.size()) {
while(index + 1 < A.size() && A[index] >= A[index + 1])
index++;
int up = 0, down = 0;
while(index + 1 < A.size() && A[index] < A[index + 1]) {
index++; up++;
}
while(index + 1 < A.size() && A[index] > A[index + 1]) {
index++; down++;
}
if(up > 0 && down > 0) {
int tmp_length = up + down + 1;
if(tmp_length > max_length)
max_length = tmp_length;
}
}
return max_length;
}
};