#include <bits/stdc++.h>
using namespace std;

int main() {
  int N,K,M;
  cin>>N>>K>>M;
  vector<int>A(N-1);
  int sum=0;
  for(int i=0;i<N-1;i++){
    cin>>A.at(i);
    sum+=A.at(i);
  }
  for(int i=0;i<=K;i++){
    if(sum+i>=M*N){
      cout<<i;
      break;
    }
    if(i==K&&sum+i<M*N)
      cout<<-1;
  }
}
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int,int> pii;
typedef map<int,int> mkmap;
typedef vector<int> vi;
typedef vector<string> vs;
typedef vector<pii> vp;
typedef vector<vi> vv;

#define fast ios_base::sync_with_stdio(false),cin.tie(NULL),cout.tie(NULL)
const ll mod=1000000007;
const int sz=1000001;
#define endl "\n"
#define all(a) (a).begin(),(a).end()
#define rep(i,a,b) for(i=a;i<b;++i)
#define rrep(i,a,b) for(i=a;i>=b;--i)
#define F first
#define S second
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define db(x) cout << (#x) << " = " << x << endl;

inline ll mult(ll a, ll b) {return (((a % mod) * (b % mod)) % mod);}



int main(){
    fast;
    int t,tt,tti,n,m,x,y,z,i,j,k,temp,count,o,e,f,ans,sum,l,r,mx,mn;
    ll lx,ly,lz,ltemp;
    double fx,fy,fz;
    string s;
    
    cin>>n>>k>>m;
    lx=0;
    rep(i,1,n){
        cin>>x;
        lx+=x;
    }
    x=(ll)m*n-lx;
    cout<<(x>k?-1:(x<0?0:x) )<<endl;
}

/*
    
*/