fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int cmp(const void* a, const void* b)
  5. {
  6. return *(int*)a - *(int*)b;
  7. }
  8.  
  9. int main(void)
  10. {
  11. static int A[300000];
  12. int N;
  13.  
  14. scanf("%d", &N);
  15. for (int i = 0; i < N; ++i)
  16. scanf("%d", &A[i]);
  17.  
  18. qsort(A, N, sizeof(int), cmp);
  19.  
  20. long long sum_elements = 0;
  21. long long sum_type_a = 0;
  22. long long sum_type_b = 0;
  23. long long sum_type_c = 0;
  24. for (int i = 0; i < N; ++i)
  25. {
  26. sum_type_a += A[i] * (N - 1 - i);
  27. sum_type_b += A[i] * (N - 1 - i) + A[i];
  28. sum_type_c += A[i] * (N - 1 - i) + A[i] + sum_elements;
  29. sum_elements += A[i];
  30. }
  31.  
  32. printf("%lld\n", sum_type_a);
  33. printf("%lld\n", sum_type_b);
  34. printf("%lld\n", sum_type_c);
  35. }
Success #stdin #stdout 0s 4424KB
stdin
5
1 2 3 4 5
stdout
20
35
55