#include <bits/stdc++.h>
using namespace std;
int primes[100001] = {0};
void seive() {
  for (int i = 0; i < 100001; i++) primes[i] = 1;
  for (int i = 2; i * i <= 100001; i++) {
    for (int j = i * i; j <= 100001; j += i)
      if (primes[j]) primes[j] = false;
  }
  primes[0] = primes[1] = false;
}
int main() {
  int t = 1;
  while (t--) {
    int n, m, k;
    cin >> n >> m >> k;
    int arr[n * m][2], re = k, idx = 0;
    int r = 1, c = 1;
    while (idx < n * m) {
      arr[idx][0] = r;
      arr[idx][1] = c;
      idx++;
      if (r % 2)
        c++;
      else
        c--;
      if (c > m) {
        c--;
        r++;
      }
      if (c < 1) {
        r++;
        c++;
      }
    }
    int i = 0;
    for (i = 0; i < 2 * (k - 1); i += 2)
      cout << 2 << " " << arr[i][0] << " " << arr[i][1] << " " << arr[i + 1][0]
           << " " << arr[i + 1][1] << endl;
    cout << n * m - 2 * (k - 1) << " ";
    while (i < n * m) {
      cout << arr[i][0] << " " << arr[i][1] << " ";
      i++;
    }
  }
}
