#include <bits/stdc++.h>
using namespace std;
vector<pair<int, int> > e[55];
int c[55];
double W;
int N, M;
int main() {
  scanf("%d%lf%d", &N, &W, &M);
  bool flag = 1;
  memset(c, 0, sizeof(c));
  for (int i = 1, j = 1; i <= N; ++i) {
    int rest = M, man = 0;
    for (; rest >= N - c[j]; ++j) {
      ++man;
      e[j].push_back(make_pair(i, N - c[j]));
      rest -= N - c[j];
      c[j] = N;
    }
    if (man > 2) flag = 0;
    if (!rest) continue;
    e[j].push_back(make_pair(i, rest));
    c[j] += rest;
    ++man;
    if (man > 2) flag = 0;
  }
  if (!flag) {
    puts("NO");
    exit(0);
  } else
    puts("YES");
  for (int i = 1; i <= M; ++i) {
    for (int j = 0; j < e[i].size(); ++j)
      printf("%d %.6lf ", e[i][j].first, W * e[i][j].second / M);
    puts("");
  }
  return 0;
}
