#include<bits/stdc++.h>
using namespace std;
#define lli long long int
#define DEBUG(x) cout << '>' << #x << ':' << x << endl;
#define REP(i,n) for(int i=0;i<(n);i++)
#define FOR(i,a,b) for(int i=(a);i<=(b);i++)
#define FORD(i,a,b) for(int i=(a);i>=(b);i--)
inline bool EQ(double a, double b) { return fabs(a-b) < 1e-9; }
const int INF = 1<<29;
typedef long long ll;
inline int two(int n) { return 1 << n; }
inline int test(int n, int b) { return (n>>b)&1; }
inline void set_bit(int & n, int b) { n |= two(b); }
inline void unset_bit(int & n, int b) { n &= ~two(b); }
inline int last_bit(int n) { return n & (-n); }
inline int ones(int n) { int res = 0; while(n && ++res) n-=n&(-n); return res;}

int main()
{
	lli n,k,m;
	cin>>n>>k>>m;
	lli avg=0;
	for(int i=1;i<n;i++)
	{lli x;
		cin>>x;
		avg+=x;}
	lli ans=n*m-avg;
	if(ans<=0)
		cout<<0;
	else if(ans<=k)
		cout<<ans;
	else
		cout<<-1;


}


#include<iostream>
#include<string>
#include<vector>

int main () {
    int n, k, m;
    std::cin >> n >> k >> m;
    std::vector<int> a(n - 1);
    int sum = 0;
    for (int i = 0; i < n - 1; i++)
    {
        std::cin >> a[i];
        sum += a[i];
    }

    bool f = false;
    int ans;
    for (int i = 0; i <= k; i++)
    {
        if((1.0*sum + i) / n >= m) {
            f = true;
            ans = i;
            break;
        }
    }

    if(!f) {
        ans = -1;
    }

    std::cout << ans << std::endl;
}