fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. using ll = long long;
  5. using pi = pair<int, int>;
  6. using vi = vector<int>;
  7. using mi = map<int, int>;
  8. using pqi = priority_queue<int>;
  9. #define rep(i, a, b) for (int i = (a); i < (b); i++)
  10. #define repe(i, a, b) for (int i = (a); i <= (b); i++)
  11. #define debug(elem) cerr << #elem << " = " << elem << "\n"
  12. #define all(a) a.begin(), a.end()
  13. #define sz(a) (int)a.size()
  14. #define pb push_back
  15.  
  16. template <typename T> void read(T &a) {cin >> a; return;}
  17. template <typename A, typename B> void read(pair<A, B> &p) {cin >> p.first >> p.second; return;}
  18. template <typename T> void read(vector<T> &v) {for (auto &a : v) {read(a);} return;}
  19. template <typename A, typename... B> void read(A &a, B &...b) {read(a); (read(b), ...);}
  20.  
  21. /*
  22. Just fixing my ways.
  23. */
  24.  
  25. void solve(int TC) {
  26. #ifdef LOCAL
  27. debug(TC);
  28. #endif
  29.  
  30. int n, m;
  31. read(n, m);
  32. vector<vector<ll>> a(n, vector<ll>(m));
  33.  
  34. rep(i, 0, n) {
  35. read(a[i]);
  36. }
  37.  
  38. sort(all(a), [](const vector<ll> &a, const vector<ll> &b) {
  39. return accumulate(all(a), 0LL) > accumulate(all(b), 0LL);
  40. });
  41.  
  42. ll ans = 0;
  43. ll cur = 0;
  44. rep(i, 0, n) {
  45. rep(j, 0, m) {
  46. cur += a[i][j];
  47. ans += cur;
  48. }
  49. }
  50.  
  51. cout << ans << "\n";
  52. }
  53.  
  54. int main() {
  55. ios::sync_with_stdio(0);
  56. cin.tie(0);
  57.  
  58. int t;
  59. cin >> t;
  60.  
  61. repe(i, 1, t) {
  62. solve(i);
  63. }
  64.  
  65. return 0;
  66. }
Success #stdin #stdout 0.01s 5288KB
stdin
3
2 2
4 4
6 1
3 4
2 2 2 2
3 2 1 2
4 1 2 1
2 3
3 4 5
1 1 9
stdout
41
162
72