#include <bits/stdc++.h>
using namespace std;
const int INF = 1 << 29;
int main() {
  int n, m;
  double w;
  cin >> n >> w >> m;
  double p = w * n / m;
  vector<double> a(n, w);
  int now = 0;
  bool f = 0;
  int cnt = 0;
  for (int i = 0; i < (int)m; ++i) {
    double hoge = p;
    for (int j = 0; j < (int)INF; ++j) {
      double x = min(hoge, a[now]);
      hoge -= x;
      a[now] -= x;
      cnt++;
      if (cnt > 2) f = 1;
      if (abs(a[now]) <= 1e-8) {
        now++;
        cnt = 0;
      }
      if (abs(hoge) <= 1e-8) break;
    }
  }
  if (f) {
    cout << "NO" << endl;
  } else {
    now = 0;
    cout << "YES" << endl;
    vector<double> a(n, w);
    for (int i = 0; i < (int)m; ++i) {
      double hoge = p;
      for (int j = 0; j < (int)INF; ++j) {
        double x = min(hoge, a[now]);
        if (j) cout << " ";
        printf("%d %.6f", now + 1, x);
        hoge -= x;
        a[now] -= x;
        if (abs(a[now]) <= 1e-8) now++;
        if (abs(hoge) <= 1e-8) break;
      }
      cout << endl;
    }
  }
}
