热门

最新

红包

立Flag

投票

同城

我的

发布
weixin_56645631
苏哈哈462
4 年前
trueweixin_56645631

# 703A
思路:可以考虑构建一个0,1,2,3.。。。。。的一个数组,从第一个到最后一个的前一个的往后扫,如果可以构建那么则🆗,否则就无法构建;
#include<stdio.h>
long long ai[30010];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
scanf("%d",&n);
long long res=0;
for(int i=1;i<=n;i++)
{
scanf("%d",&ai[i]);
}
for(int i=1;i<=n-1;i++)
{
if(ai[i]!=0&&ai[i]>=i-1)
{
long long x=ai[i];
ai[i]=i-1;
ai[i+1]+=x-i+1;
}
}
int flag=1;
for(int i=1;i<=n-1;i++)
{
if(ai[i]>=ai[i+1])
{
flag=0;
break;
}
}
if(flag)printf("YES\n");
else printf("NO\n");
}
return 0;
}

CSDN App 扫码分享
分享
评论
点赞
打赏
  • 复制链接
  • 举报
下一条:
对待孩子最好给到信任,自由,爱
立即登录