#include <bits/stdc++.h>
using namespace std;
const long long mod=1e9+7;
long long dp[100100],bef[100100];
int main()
{
long long n,sum,i,x;
while(cin>>n)
{
memset(bef,0,sizeof(bef));
dp[0]=0;
for(i=1;i<=n;i++)
{
scanf("%lld",&x);
if(bef[x])
dp[i]=(dp[i-1]*2-dp[bef[x]-1]+mod)%mod;
else
dp[i]=(dp[i-1]*2+1)%mod;
bef[x]=i;
}
printf("%lld",dp[n]);
}
}
51nod 1202 子序列个数
最新推荐文章于 2021-04-15 23:36:32 发布
