#include<iostream>
#include<cmath>

using namespace std;

int d;
double v[16];

double interpolate(int n, int E){
	// 補間多項式L(x) のx=n での値L(n) を計算する
	// L(x) の作成において，点(n,V[n]) と(E,V[E]) は使わない
	double sum = 0.0;
	for(int k = 0; k < d + 3; ++k){
		if(k == E || k == n){
			continue;
		}
		double p = v[k];
		for(int i = 0; i < d + 3; ++i){
			if(i != k && i != n && i != E){
				p *= 1.0 * (n - i) / (double)(k - i);
			}
		}
		sum += p;
	}
	return sum;
}

bool outlier(int E){
	for (int i=0; i<d+3; ++i){
		if(i == E){
			continue;
		}
		double p = interpolate(i, E);
		if(abs(p - v[i]) > 0.1){
			return false;
		}
	}
	return true;
}

int main(){
	while (cin >> d && d){
		for(int i = 0; i < d + 3; ++ i){
			cin >> v[i];
		}
		for(int i = 0; i < d + 3; ++ i){
			if(outlier(i)){
				cout << i << endl;
				//cout << interpolate(i, d);
				break;
			}
		}
	}
	
}
