你那个时间复杂度是O(mn)吧?我的时间复杂度O(n),空间复杂度O(m),AC 75%,显示超时 int64_t totalWays(int n, int m) {     deque<int> dp(m, 0);     dp[0] = 1;     int sum = 1;     for (int i = 1; i < min(n, m); ++i)     {         for (int j = 0; j < i; ++j)         {             dp[i] += dp[j]%10007;         }         dp[i] += 1;         sum += dp[i];         sum = sum % 10007;     }     if (n < m)         return dp[n - 1];     for (int i = m; i < n; ++i)     {         int front = dp.front();         dp.pop_front();         dp.push_back(sum);         sum += (sum - front);         sum %= 10007;         if (sum < 0)             sum += 10007;     }     return dp[m-1] % 10007; }
点赞 1

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务