#include <bits/stdc++.h>
using namespace std;
int main() {
  int i, n, m, k;
  scanf("%d %d %d", &n, &m, &k);
  long long array[n];
  priority_queue<long long> pq;
  map<long long, int> ms;
  for (i = 0; i < n; i++) {
    scanf("%I64d", &array[i]);
    pq.push(array[i]);
  }
  long long sum = 0;
  i = 1;
  while (!pq.empty()) {
    if (i > m * k) break;
    sum += pq.top();
    ms[pq.top()]++;
    i++;
    pq.pop();
  }
  int j = m;
  long long x;
  bool space = false;
  k--;
  printf("%I64d\n", sum);
  for (i = 0; i < n && k != 0; i++) {
    x = array[i];
    if (ms.count(x) && ms[x] != 0) {
      ms[x]--;
      j--;
      if (j == 0) {
        if (space) printf(" ");
        printf("%d", i + 1);
        space = true;
        j = m;
        k--;
      }
    }
  }
  printf("\n");
  return 0;
}
