题意
有
n
个元素排成一行,对于前n−1 个元素,到达第
i
个元素会被传送到第i+ai 个元素,现在你在第1个元素,问最后是否能到达第
t
<script type="math/tex" id="MathJax-Element-96">t</script>个元素
思路
模拟,刚开始位置为1,每次更新位置,超过t就不用管了,能到达t就是YES
代码
#include <cstdio>
int a[30001];
int main()
{
int n,t,now;
scanf("%d%d",&n,&t);
for(int i=1;i<=n-1;i++)
scanf("%d",&a[i]);
now=1;
while(now<t)
now+=a[now];
if(now==t)
printf("YES\n");
else printf("NO\n");
return 0;
}