Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
36015 | yinzihe | 【S】T2 | C++ | 通过 | 100 | 457 MS | 736 KB | 832 | 2025-02-07 14:09:23 |
#include<bits/stdc++.h> #define int long long using namespace std; int a[10010],pos[10010]; int f[10010]; int s[20010]; signed main() { ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); //freopen("book.in","r",stdin); //freopen("book.out","w",stdout); long long n,ans=0; cin>>n; for(int i=1;i<=n;i++) cin>>a[i],pos[a[i]]=i; for(int i=1;i<=n;i++) { long long cnt=0; for(int j=1;j<=n;j++) { f[j]=f[j-1]; if(a[j]>i) f[j]++; if(a[j]<i) f[j]--; } for(int j=0;j<pos[i];j++) s[f[j]+n]+=j+1; for(int j=pos[i];j<=n;j++) { int now=f[j]+n; cnt+=j*s[now]; } ans+=cnt*i; for(int j=0;j<pos[i];j++) s[f[j]+n]=0; } cout<<ans; }