#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("O3")
long long power(long long a, long long b, long long m) {
  return b ? (b & 1 ? (a * power((a * a) % m, b >> 1, m)) % m
                    : power((a * a) % m, b >> 1, m))
           : 1;
}
int f(pair<int, int> a, pair<int, int> b) { return a.second < b.second; }
int main() {
  int n;
  cin >> n;
  int m;
  cin >> m;
  int k;
  cin >> k;
  vector<int> b(n);
  for (int i = 0; i < n; i++) {
    cin >> b[i];
  };
  vector<pair<int, int> > c, d;
  for (int i = 0; i < n; i++) {
    c.push_back(make_pair(b[i], i));
  }
  sort(c.begin(), c.end());
  long long s = 0;
  for (int i = n - 1; i > n - 1 - m * k; i--) {
    s += c[i].first;
    d.push_back(c[i]);
  }
  cout << s << endl;
  int cnt = 0;
  sort(d.begin(), d.end(), f);
  for (int i = m; i < m * k; i += m) {
    cout << d[i].second << ' ';
  }
  return 0;
}
