一、题目
![在这里插入图片描述](https://img-blog.csdnimg.cn/c44160c38507458aaa92e9a2a69de813.png)
二、代码
class Solution
{
public:
int findNumberOfLIS(vector<int>& nums)
{
int i,j;
int return_int=0;
vector<int> dp(nums.size(),1);
vector<int> count(nums.size(),1);
int max_length=1;
for(i=0;i<nums.size();i++)
{
for(j=0;j<i;j++)
{
if(nums[i]>nums[j])
{
if(dp[j]+1>dp[i]) count[i]=count[j];
else if(dp[j]+1==dp[i]) count[i]=count[i]+ count[j];
dp[i]=max(dp[i],dp[j]+1);
max_length=max(max_length,dp[i]);
}
}
}
std::cout<<"max_length "<<max_length<<std::endl;
for(i=0;i<nums.size();i++)
{
if(dp[i]==max_length) return_int+=count[i];
}
return return_int;
}
};
三、运行结果
![在这里插入图片描述](https://img-blog.csdnimg.cn/638b75f8509342e19dda09dad384f334.png)