Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
60437 | wangjiajian | J3 | C++ | 解答错误 | 60 | 240 MS | 27600 KB | 580 | 2022-10-15 11:36:54 |
#include <bits/stdc++.h> #define ll long long #define mod (long long)(1e9+7) using namespace std; // normal option : SIG(n, i=1)a[i]*i*(n-i+1); int n, a[500003]; map<int, int> m; int lst[500003]; ll ans; int main() { // freopen("J3.in", "r", stdin); // freopen("J3.out", "w", stdout); scanf("%d", &n); for(int i=1; i<=n; i++) { scanf("%lld", a+i); lst[i] = m[a[i]]+1; m[a[i]] = i; } for(int i=1; i<=n; i++) ans = (ans+(ll)a[i]*(i-lst[i]+1)*(n-i+1))%mod; printf("%lld\n", ans); return 0; }