#pragma warning(disable:4996)
#include <iostream>
#include <cstdio>
using namespace std;
//dp数组的含义:以nums[i]结尾的最长连续递增子序列
int dp[100010], Max, L;
long long nums[100010];
int main()
{
while (cin >> L)
{
if (L == 0)
{
cout << 0;
}
Max = 1; //重置Max为1
for (int i = 0; i < L; ++i) //每次都要重置dp数组为1
{
dp[i] = 1; //初始化为1
cin >> nums[i];//输入数据
}
for (int j = 1; j < L; ++j) //从下标为i开始
{
if (nums[j] > nums[j - 1])
{
dp[j] = dp[j - 1] + 1;
}
Max = max(Max, dp[j]);
}
cout << Max << endl;
}
return 0;
}
为什么会出现答案错误,哪里错了呢?试了很多用例都没有试出来,请指教,必采纳