提交时间:2022-05-29 19:47:14

运行 ID: 1253

#include <bits/stdc++.h> using namespace std; const int MAXN=2e5+7; int a[MAXN]; int main(){ int n,i,j,t=1; cin>>n; for(i=1;i<=n;i++){ cin>>a[i]; } for(i=1;i<=n;i++){ for(j=t;j<=n;j++){ if(!a[i]) break; if(a[j]==0&&i<j){ t=j; a[i]=min(abs(i-j),a[i]); break; } else if(a[j]==0){ t=j; a[i]=min(i-j,a[i]); } } cout<<a[i]<<" "; } return 0; }