func_code_string: #include <bits/stdc++.h>   using namespace std;   int Scan();   int n, m, w, num;   double aver, cur[105];   vector<pair<int, double> > res[105];   double place(double V, int i) {     double D = aver - cur[num];     double L = min(D, V);     res[num].push_back(make_pair(i, L));     cur[num] += L;     if (fabs(cur[num] - aver) <= 1e-6) num++;     return fabs(V - L);   }   int main() {     scanf( %d%d%d , &n, &w, &m);     aver = (double)w * n / m;     num = 1;     memset(cur, 0, sizeof cur);     for (int i = 1; i <= n; ++i) {       double now = place(w, i);       if (now > 1e-6) now = place(now, i);     }     if (num != m + 1)       puts( NO );     else {       puts( YES );       for (int i = 1; i <= m; ++i) {         for (int j = 0; j < res[i].size(); ++j) {           printf( %d %.6lf , res[i][j].first, res[i][j].second);           j == res[i].size() - 1 ? puts(  ) : putchar(   );         }       }     }   }   int Scan() {     int res = 0, ch, flag = 0;     if ((ch = getchar()) ==  - )       flag = 1;     else if (ch >=  0  && ch <=  9 )       res = ch -  0 ;     while ((ch = getchar()) >=  0  && ch <=  9 ) res = res * 10 + ch -  0 ;     return flag ? -res : res;   }   