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

void solve(int TestCase) {
    int n, k, m;
    cin >> n >> k >> m;
    n--;

    vector<int> A(n);
    for(auto& x : A)
        cin >> x;
    
    int sum = 0;
    for(auto x : A)
        sum += x;
    
    int need = m * (n+1) - sum;
    if(need > k)
        cout << -1 << endl;
    else if(need < 0)
        cout << 0 << endl;
    else
        cout << need << endl;
}
 
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
 
    int t = 1;
    //cin >> t;
    for(auto i = 1; i <= t; ++i)
        solve(i);
}

#include <iostream>
#include <stdio.h>
#include <string>
#include <math.h>
#include <iomanip>
#include <vector>
#include <algorithm>
#include <cassert>
#include <utility>
#include <numeric>
#include <cstring>
#include <map>
#include <set>
#include <cmath>
#define rep(i,n) for (int i=0; i<(n); ++i)

using namespace std;
using ll = long long;

int main (){
   int N,K,M;
   cin >> N >> K >>M;
   int A[N];
   int sum=0;
   for (int i=0;i<N-1;i++){
       cin >> A[i];
        sum += A[i];
   }
   int g = M*N - sum;
   if (g>K)cout << "-1";
   else cout <<max(0, g);



}