解题思路:
注意事项:
参考代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+10;
int mod=1e9+7;
int a[N],dp[N];
int main()
{
int n;cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
dp[0]=1;
for(int i=1;i<=n;i++)
{
int minn=1e9,maxn=0;
for(int j=i;j>=1;j--)
{
minn=min(minn,a[j]);
maxn=max(maxn,a[j]);
if(maxn-minn+1==i-j+1)
{
dp[i]+=dp[j-1];
dp[i]%=mod;
}
}
}
cout<<dp[n]<<endl;
return 0;
}
0.0分
0 人评分
点我有惊喜!你懂得!浏览:1417 |
printf基础练习2 (C++代码)(受教了,,%#o和%#x的用途)三人行,必有我师,,多看题解会有收获浏览:1912 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:773 |
C语言训练-排序问题<1> (C语言代码)浏览:1411 |
简单的a+b (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:761 |
【蟠桃记】 (C语言代码)浏览:710 |
C语言训练-求PI* (C语言代码)浏览:637 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:504 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:644 |