1.


class Solution {
public:
int lengthOfLIS(vector<int>& nums) {
int n=nums.size();
vector<int> ret(n,1);
ret0=1;
int a=1;
for(int i=1;i<n;i++){
for(int j=0;j<i;j++){
if(numsi>numsj) reti=max(retj+1,reti);
a=max(a,reti);
}
};
return a;
}
};
2.


class Solution {
public:
int wiggleMaxLength(vector<int>& nums) {
int n=nums.size();
vector<int> f(n,1);
auto g=f;
int ret=1;
for(int i=1;i<n;i++){
for(int j=0;j<i;j++){
if(numsi>numsj) fi=max(gj+1,fi);
else if(numsi<numsj) gi=max(fj+1,gi);
}
ret=max(ret,max(fi,gi));
}
return ret;
}
};



class Solution {
public:
int findLongestChain(vector<vector<int>>& pairs) {
sort(pairs.begin(),pairs.end());
int n=pairs.size();
vector<int> ret(n,1);
int r=1;
for(int i=1;i<n;i++){
for(int j=0;j<i;j++){
if(pairsj1<pairsi0) reti=max(reti,retj+1);
}
r=max(r,reti);
}
return r;
}
};
4.
\

class Solution {
public:
int longestSubsequence(vector<int>& arr, int difference) {
unordered_map<int,int> ret;
retarr\[0]=1;
int sum=1;
for(int i=1;i<arr.size();i++){
retarr\[i]=retarr\[i-difference]+1;
sum=max(sum,retarr\[i]);
}
return sum;
}
};
5.


class Solution {
public:
int lenLongestFibSubseq(vector<int>& arr) {
int n=arr.size();
unordered_map<int,int> hash;
for(int i=0;i<n;i++) hasharr\[i]=i;
vector<vector<int>> dp(n,vector<int>(n,2));
int ret=2;
for(int j=2;j<n;j++){
for(int i=1;j>i;i++){
int a=arrj-arri;
if(a<arri&&hash.count(a)) dpij=dphash\[a]i+1;
ret=max(ret,dpij);
}
}
return ret>=3?ret:0;
}
};