[杂题] Codeforces 407B #239 (Div. 1) B. Long Path

来源:互联网 发布:数据库怎么添加数据 编辑:程序博客网 时间:2024/05/17 22:57

我们可以发现当我们走到第一次ii之前所有格子其实都是偶数遍
就不难得出

fi+1=fi+1+fifpi+1

#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;typedef long long ll;const int P=1e9+7;const int N=1005;int n,f[N];int main(){  freopen("t.in","r",stdin);  freopen("t.out","w",stdout);    scanf("%d",&n);   f[1]=0; int p;  for (int i=1;i<=n;i++) {      scanf("%d",&p);      f[i+1]=((ll)f[i]+1+f[i]+P-f[p]+1)%P;    }   printf("%d\n",f[n+1]);  return 0;}
0 0
原创粉丝点击