#include <bits/stdc++.h>
using namespace std;
int arr[305][305];
int visited[305];
int n, m, k;
int withinBoundary(int x, int y) {
  if (x >= 0 && x < n && y >= 0 && y < m)
    return 1;
  else
    return 0;
}
int main() {
  cin >> n >> m >> k;
  vector<pair<int, int> > q;
  int dir = 1;
  int x = 0, y = 0;
  q.push_back(make_pair(0, 0));
  while (true) {
    y += dir;
    if (y == m) {
      dir *= -1;
      y = m - 1;
      x++;
    }
    if (y == -1) {
      dir *= -1;
      y = 0;
      x++;
    }
    if (x == n) break;
    q.push_back(make_pair(x, y));
  }
  int j = 0;
  for (int i = 0; i < k - 1; i++) {
    cout << "2 ";
    cout << q[j].first + 1 << " " << q[j].second + 1 << " "
         << q[j + 1].first + 1 << " " << q[j + 1].second + 1 << endl;
    j += 2;
  }
  cout << (n * m) - (2 * (k - 1)) << " ";
  while (j < q.size()) {
    cout << q[j].first + 1 << " " << q[j].second + 1 << " ";
    j++;
  }
  return 0;
}
