CodeDance2023 2024-03-14 23:45 采纳率: 96%
浏览 3
已结题

最长连续递增子序列WA问题.必采纳

img


#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;
}

为什么会出现答案错误,哪里错了呢?试了很多用例都没有试出来,请指教,必采纳

  • 写回答

3条回答 默认 最新

  • GISer Liu 2024-03-15 21:14
    关注

    该回答引用自GPT-3.5,由博主GISer Liu编写:

    问题分析:
    你的代码逻辑基本正确,但是存在一个问题:在每次输入新的数组之前,你没有将Max和dp数组重新初始化为1。这导致了在不同的测试用例之间,Max和dp数组的值没有被正确重置,影响了后续的计算结果。
    解决方案:
    在每次输入新的数组之前,将Max和dp数组重新初始化为1,以确保每次都从正确的状态开始计算。修改代码如下:
    cppCopy code

    #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[i] = 1;   // 初始化为1
    cin >> nums[i]; // 输入数据
    }
    for (int j = 1; j < L; ++j) {
    if (nums[j] > nums[j - 1]) {
    dp[j] = dp[j - 1] + 1;
    }
    Max = max(Max, dp[j]);
    }
    cout << Max << endl;
    // 重置Max和dp数组为1
    Max = 1;
    for (int i = 0; i < L; ++i) {
    dp[i] = 1;
    }
    }
    return 0;
    }
    

    这样就能够正确地处理每个测试用例了。

    如果该回答解决了您的问题,请采纳!如果没有,请参考以下方案进行修订

    用户答题指南

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月31日
  • 已采纳回答 3月23日
  • 修改了问题 3月15日
  • 创建了问题 3月14日

悬赏问题

  • ¥15 求京东批量付款能替代天诚
  • ¥15 slaris 系统断电后,重新开机后一直自动重启
  • ¥15 51寻迹小车定点寻迹
  • ¥15 谁能帮我看看这拒稿理由啥意思啊阿啊
  • ¥15 关于vue2中methods使用call修改this指向的问题
  • ¥15 idea自动补全键位冲突
  • ¥15 请教一下写代码,代码好难
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题
  • ¥15 Utunbu中vscode下cern root工作台中写的程序root的头文件无法包含