Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
36097 | 1233456a | 【S】T2 | C++ | 解答错误 | 35 | 588 MS | 460 KB | 607 | 2025-02-07 15:44:00 |
#include<bits/stdc++.h> using namespace std; int n,a[11451],t1[114514],t2[114514],ans; int main() { cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n;i++) { int x=n; for(int j=i-1;j>0;j--) { if(a[j]>a[i])x++; else x--; t1[x]+=j; } x=n; for(int j=i+1;j<=n;j++) { if(a[j]>a[i])x++; else x--; t2[x]+=j; } x=0; for(int j=i-1;j>=1;j--){ if(a[j]<a[i])x--; else x++; ans+=j*t2[n-x]*a[i]; } ans+=i*t1[n]*a[i]; ans+=i*t2[n]*a[i]; ans+=i*i*a[i]; for(int j=1;j<=2*n-1;j++)t1[j]=t2[j]=0; } cout<<ans; }