update
This commit is contained in:
parent
154e9beea2
commit
30d8749774
@ -0,0 +1,60 @@
|
||||
#include<bits/stdc++.h>
|
||||
using namespace std;
|
||||
#define int long long
|
||||
|
||||
struct Node{
|
||||
int l,r,s;
|
||||
};
|
||||
const int MAX_N = 505;
|
||||
int n,pn=0;
|
||||
int a[MAX_N];
|
||||
int ans[MAX_N];
|
||||
int changed=0;
|
||||
Node node[MAX_N*MAX_N];
|
||||
int readint();
|
||||
|
||||
signed main(signed argc,char *argv[]){
|
||||
n=readint();
|
||||
for(int i=1;i<=n;i++){
|
||||
a[i]=readint();
|
||||
}
|
||||
for(int i=1;i<=n;i++){
|
||||
int cnt=0;
|
||||
for(int j=i;j<=n;j++){
|
||||
cnt+=a[j];
|
||||
node[++pn] = {
|
||||
i,j,cnt
|
||||
};
|
||||
}
|
||||
}
|
||||
sort(node+1,node+1+pn,[](Node a,Node b)->bool{
|
||||
return a.s<b.s;
|
||||
});
|
||||
int pmincmplast = INT_MAX;
|
||||
for(int i=1;i<pn;i++){
|
||||
for(int j=node[i].l;j<=node[i].r;j++){
|
||||
if (ans[j]==0) {
|
||||
abs(node[i].s-node[i+1].s);
|
||||
}else{
|
||||
ans[j]=min(abs(node[i].s-node[i+1].s),ans[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int i=1;i<=n;i++){
|
||||
cout<<ans[i]<<endl;
|
||||
}
|
||||
}
|
||||
|
||||
int readint(){
|
||||
int x=0,w=1;
|
||||
char ch=0;
|
||||
while(!isdigit(ch)){
|
||||
if(ch=='-')w=-1;
|
||||
ch=getchar();
|
||||
}
|
||||
while(isdigit(ch)){
|
||||
x=x*10+(ch-'0');
|
||||
ch=getchar();
|
||||
}
|
||||
return x*w;
|
||||
}
|
Loading…
Reference in New Issue
Block a user