1
0
Fork 0
mirror of https://gitlab.com/mfocko/LeetCode.git synced 2024-11-10 00:09:06 +01:00
LeetCode/cpp/longest-increasing-subsequence.cpp
Matej Focko 4340c17b03
cpp: add “300. Longest Increasing Subsequence”
Signed-off-by: Matej Focko <mfocko@redhat.com>
2024-01-05 23:42:43 +01:00

25 lines
550 B
C++

#include <algorithm>
#include <vector>
class Solution {
public:
int lengthOfLIS(const std::vector<int> &nums) {
if (nums.empty()) {
return 0;
}
std::vector<int> dp(nums.size(), 1);
int m = 1;
for (auto i = 1u; i < nums.size(); ++i) {
for (auto j = 0u; j < i; ++j) {
if (nums[i] > nums[j]) {
dp[i] = std::max(dp[i], 1 + dp[j]);
m = std::max(m, dp[i]);
}
}
}
return m;
}
};