Submission #8574

#TimeUsernameProblemLanguageResultExecution timeMemory
8574angel지우개 (GA4_eraser)C++98
6 / 100
24 ms1868 KiB
#include <stdio.h> #include <algorithm> #define mod 1000000007 #define inv 166666668 int n; int a[100005], s[100005]; int f(long long a, long long b, long long c) { a %= mod, b %= mod, c %= mod; return (((a * b) % mod) * c) % mod; } int main() { long long ans = 0, sum = 0; scanf("%d", &n); for(int i=0; i<n; i++) { scanf("%d", &a[i]); sum = (sum + a[i]) % mod; s[a[i]]++; } std::sort(a, a + n); ans = f(sum, sum, sum); for(int i=1; i<=100000; i++) { ans = (ans - (f(s[i], s[i], s[i]) * f(i, i, i)) % mod) % mod; ans = (ans + mod) % mod; ans = (ans - 3 * f(f(s[i], s[i], sum - i * s[i]), i, i)) % mod; ans = (ans + mod) % mod; } printf("%lld\n", (ans * inv) % mod); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...