#include #include #define MAXN 10010 #define INF 0x3fffffff int v[MAXN],cur[MAXN]; int min(int x,int y) { return xj) { s=0; j=i; } while(j<=n && v[j]-cur[j]<=v[j+1]) j++; if(ans>j-i+1) ans=j-i+1; sub=v[j]-cur[j]-v[j+1]; cur[j]+=min(sub,v[i]-s); s+=min(sub,v[i]-s); while(!(v[i]-s)) { s-=cur[i]; i++; } } printf("%d\n",ans); } return 0; }