#include <bits/stdc++.h>
using namespace std;
const int N = 200004;
struct E {
  int x, id;
  bool operator<(const E& p) const { return x > p.x; }
} a[N];
vector<int> v;
bool b[N];
int n, m, k;
int main() {
  scanf("%d %d %d", &n, &m, &k);
  for (int i = 1; i <= n; i++) {
    scanf("%d", &a[i].x);
    a[i].id = i;
  }
  sort(a + 1, a + n + 1);
  long long ans = 0;
  for (int i = 1; i <= m * k; i++) {
    b[a[i].id] = 1;
    ans += a[i].x;
  }
  printf("%lld\n", ans);
  int cnt = 0;
  for (int i = 1; i <= n; i++) {
    if (b[i]) {
      ++cnt;
      if (cnt == m) {
        v.push_back(i);
        cnt = 0;
      }
      if (v.size() == k - 1) break;
    }
  }
  for (int i = 0; i < v.size(); i++)
    printf("%d%c", v[i], " \n"[i == v.size() - 1]);
}
