#include <bits/stdc++.h>
using namespace std;
const int maxn = 100005;
int n, m, k;
struct node {
  int x, y;
} p[maxn];
inline bool comp(node a, node b) { return a.x + a.y < b.x + b.y; }
inline void printans(int x, int y) {
  for (int i = 1; i <= x; i++) printf("(%d,1) ", i);
  for (int i = 2; i <= y; i++) printf("(%d,%d) ", x, i);
  cout << endl;
}
int main() {
  cin >> n >> m >> k;
  int t = 0;
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= m; j++) {
      p[t].x = i;
      p[t].y = j;
      t++;
    }
  }
  sort(p, p + t, comp);
  int ans = 0;
  for (int i = 0; i < k; i++) {
    ans += (p[i].x + p[i].y - 1);
  }
  cout << ans << endl;
  for (int i = k - 1; i >= 0; i--) {
    printans(p[i].x, p[i].y);
  }
  return 0;
}
