题意:在长度为n的序列中 求有多少子序列满足 图片说明

思路:两边取对数 则公式转换为 图片说明
直接用这个条件区间 去求上升子序列的数量即可
dp[i] 表示以i为结尾的序列数量的多少 初始状态明显为1

#include <bits/stdc++.h>

using namespace std;

#define LL long long

const int N = 105,mod = 1e9 + 7;

LL dp[N],a[N];

int main()
{
    ios::sync_with_stdio(0);

    int n ;

    cin >> n ;

    for(int i = 1;i <= n; i++)
    {
        cin >> a[i];
        dp[i] = 1;
    }

    LL res = 0;

    for(int i = 1;i <= n; i ++)
    {
        for(int j = 1; j < i ;j ++)
        {
            if(j * log(a[i]) > i * log(a[j]))
                dp[i] = (dp[i] + dp[j])%mod;
        }

        res = (res + dp[i])%mod;
    }

    cout << res << '\n';

    return 0;
}