#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) { return a ? gcd(b % a, a) : b; }
double a[60][60];
int main() {
  cin.sync_with_stdio(0);
  cin.tie(0);
  cout.setf(ios::fixed);
  cout.precision(9);
  double eps = 1e-9;
  double n, m, k;
  cin >> n >> m >> k;
  double sz = m * n / k;
  int now = 1;
  double left = sz;
  bool z = true;
  for (int i = 1; i <= n; i++) {
    if (left > m) {
      left -= m;
      a[now][i] = m;
    } else if (left == m) {
      a[now][i] = m;
      now++;
      left = sz;
    } else {
      a[now][i] = left;
      now++;
      double dif = m - left;
      a[now][i] = dif;
      left = sz;
      if (dif > left + eps) {
        z = false;
      } else {
        left -= dif;
      }
    }
    if (left <= eps) {
      left = sz;
      now++;
    }
  }
  if (now == k + 1 && z) {
    cout << "YES\n";
    for (int i = 1; i <= k; i++) {
      for (int j = 1; j <= n; j++)
        if (a[i][j] > eps) cout << j << " " << a[i][j] << " ";
      cout << "\n";
    }
  } else
    cout << "NO\n";
  return 0;
}
