#include <bits/stdc++.h>
using namespace std;
vector<pair<int, int> > gao[50];
int gaov[50];
int main() {
  int m, w, n, i;
  scanf("%d%d%d", &m, &w, &n);
  int avg = m * w;
  w *= n;
  int j = 0;
  int k = 0;
  int left = w;
  for (i = 0; i < n;) {
    int g = avg - gaov[i];
    if (k > 2) {
      puts("NO");
      return 0;
    }
    if (left == 0) {
      if (j == m) break;
      ++j;
      left = w;
      k = 0;
    }
    if (left <= g) {
      gao[i].push_back(pair<int, int>(j + 1, left));
      gaov[i] += left;
      ++k;
      left = 0;
    } else {
      gao[i].push_back(pair<int, int>(j + 1, g));
      gaov[i] = avg;
      left -= g;
      ++k;
    }
    if (gaov[i] == avg) ++i;
  }
  puts("YES");
  for (i = 0; i < n; ++i) {
    for (j = 0; j < gao[i].size(); ++j)
      printf("%d %f ", gao[i][j].first, (double)gao[i][j].second / n);
    puts("");
  }
}
