#include <bits/stdc++.h>
using namespace std;
long long n, k, s;
vector<long long> ans;
long long go(long long from, long long dist) {
  long long v1 = from + dist;
  long long v2 = from - dist;
  if (v1 > n) v1 = n;
  if (v2 < 1) v2 = 1;
  if (abs(from - v1) > abs(from - v2)) return v1;
  return v2;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> k >> s;
  long long dist = 0;
  long long pos = 1;
  for (int i = 1; i <= k; i++) {
    if (dist >= s) {
      cout << "NO" << '\n';
      return 0;
    }
    long long moves = k - i;
    long long v = s - moves - dist;
    long long to = go(pos, v);
    if (to == pos) {
      cout << "NO" << '\n';
      return 0;
    }
    dist += abs(to - pos);
    ans.push_back(to);
    pos = to;
  }
  if (dist < s) {
    cout << "NO" << '\n';
    return 0;
  }
  cout << "YES\n";
  for (auto e : ans) cout << e << ' ';
  return 0;
}
