(这里倒数第二行写反了,应为()-T)
index是关键词,编译会报错
一开始我找的是所有点中的距离左边可去除点的最大值,然后就直接max+index1。
维护的是这个点左边的点去除掉需要的最小步数。
关键代码
ans[0]=0;
ans[1]=dis[1]+1;
for(int i=2;i<=index1;i++){
int T=ans[i-1];
if(T>=dis[i]){
ans[i]=T+1;
}
else{
ans[i]=T+(dis[i]-T)+1;
}
}
cout<<ans[index1]<<endl;