#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main(){
    while(1){
        int n; cin>>n;
        if(n == 0) return 0;

        vector<int> b(n);
        for(int i=0; i<n; i++) cin>>b[i];

        for(int i=0; i<=10001; i++){
            if(i == 10001){
                cout << -1 << endl;
                break;
            }

            bool valid = true;
            for(int j=0; j<b.size(); j++){
                if(j + 1 != b[j]) valid = false;
            }

            if(valid){
                cout << i << endl;
                break;
            }

            for(int j=0; j<b.size(); j++){
                b[j]--;
            }

            b.emplace_back(b.size());
            b.erase(remove(b.begin(), b.end(), 0), b.end());
        }
    }
}
