口腔挖匙怎么用【UOJ 452】钥匙挖墙

新闻资讯2026-04-21 06:59:24
#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<bits/stdc++.h>
typedef long long ll;
using namespace std;
const int N=1000001;
const int oo=0x3f3f3f3f;
struct node{
    int next;
    int to;
}e[N*3]; 
int n,x,a[N],cnt,head[N],vis[N],dis[N];
void add(int x,int y){
    e[++cnt].to=y;
    e[cnt].next=head[x];
    head[x]=cnt;
} 
queue<int>q; 
void spfa()
            }
        }
    }
}
int main(){
    freopen("452.in","r",stdin);
    freopen("452.out","w",stdout);
    scanf("%d %d",&n,&a[0]);
    add(0,a[0]); add(0,1);
    for(int i=1;i<n;i++){
        scanf("%d",&a[i]);
        add(i,i-1); add(i,i+1); add(i,i+a[i]);
    }
    spfa();
    printf("%d",dis[n]);
    return 0;
}