#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define INF 1LL<<62
#define inf 1000000007

ll a[50];
int main() {
	for(ll i=0;i<50;i++){
		a[i]=49-i;
	}
	ll k;
	cin>>k;
	for(ll i=0;i<50;i++){
		a[i]+=k/50;
	}
	for(ll i=0;i<k%50;i++){
		a[i]++;
	}
	cout << 50<<endl;
	for(ll i=0;i<50;i++){
		cout << a[i]<<" ";
	}
	// your code goes here
	return 0;
}
#include "bits/stdc++.h"
using namespace std;
typedef long long ll;
#define _USE_MATH_DEFINES
#include <math.h>
#define NIL = -1;
#define all(x) x.begin(),x.end()
const ll INF = 1e9;
const ll mod = 1e9 + 7;
 
int digit(ll x) {
    if (x / 10 == 0) return 1;
    return digit(x / 10) + 1;
}
 
ll gcd(long long a,long long b) {
    if (a < b) swap(a,b);
    if (b == 0) return a;
    
    return gcd(b,a%b);
}

bool is_prime(long long N){
    if (N == 1) return false;
    for (long long i = 2;i * i <= N;i++){
        if (N % i == 0) return false;
    }
    return true;
}
 
ll lcm(ll a,ll b){
    return ((a * b == 0)) ? 0 : (a / gcd(a,b) * b);
}
 
double DegreeToRadian(double degree){
    return degree * M_PI / 180.0;
}
 
 
int dx[4] = {0,1,0,-1};
int dy[4] = {1,0,-1,0};
 
 
///////////////////////////////////////////////////////////////////////////////////

int main(){
    map<long long, int> mp;
    int n;
    cin >> n;
    for (int i = 0;i < n;i++){
        int a;
        cin >> a;
        mp[a]++;
    } 

    int cnt = 0;
    for (auto v : mp){
        if (v.second % 2 != 0){
            cnt++;
        }
    }

    cout << cnt << endl;
}