#include using namespace std; int solve(){ return 0; } int main(){ int N; cin >> N; vector P(N); int k0 = -1; int d1 = -1; int d2 = -1; int k1 = -1; int k2 = -1; for(int i = 0; i < N-1; i++){ cout << "? " << i << " " << N-1 << endl; cin >> P[i]; if(P[i] == -1){ return 0; } if(d1 == -1 && P[i] != 0){ d1 = i; k1 = P[i]; } else if(d2 == -1 && P[i] != 0){ d2 = i; k2 = P[i]; } } if(d2 != -1){ cout << "? " << d1 << " " << d2 << endl; cin >> k0; double k3; k3 = k1 * k2 / k0; P[N-1] = sqrt(k3); cout << "! " << P[N-1]; for(int i = 1; i < N; i++){ cout << P[N-i-1] / P[N-1]; } cout << endl; } else{ if(k1 == 1 || k1 == 25 || k1 == 49 || k1 == 64 || k1 == 81){ d2 = N-1; k2 = k1; cout << "? " << d1 << " " << d2 << endl; cin >> k0; double k3; k3 = k1 * k2 / k0; P[N-1] = sqrt(k3); cout << "! " << P[N-1]; for(int i = 1; i < N; i++){ cout << P[N-i-1] / P[N-1]; } cout << endl; } else{ cout << "! " << -1 << endl; } } return 0; }