#include <bits/stdc++.h>
using namespace std;
template <typename T>
void out(T x) {
  cout << x << endl;
  exit(0);
}
using ll = long long;
const ll mod = 1e9 + 7;
const int maxn = 1e6 + 5;
const ll MAXV = 1e6;
ll k;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  cin >> k;
  ll n = 2000;
  ll s = k + n - 1;
  vector<ll> v(n);
  for (int i = 0; i < n; i++) {
    if (i == 0) {
      v[i] = -1;
      s -= (-1);
      continue;
    }
    ll tmp = min(MAXV, s);
    v[i] = tmp;
    s -= tmp;
  }
  assert(s == 0);
  cout << n << endl;
  for (int i = 0; i < n; i++) {
    cout << v[i] << " ";
  }
  cout << endl;
  ll us = std::accumulate(v.begin(), v.end(), 0LL) * n;
  ll alice = std::accumulate(v.begin() + 1, v.end(), 0LL) * (n - 1);
  assert(us - alice == k);
  return 0;
}
