#include using namespace std; typedef long long ll; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b1) return 0; return (a-1)*(b-1); } int main(){ std::ifstream in("text.txt"); std::cin.rdbuf(in.rdbuf()); cin.tie(0); ios::sync_with_stdio(false); int N;cin>>N; vector A(N); for(int i=0;i>A[i]; if(N==2){ cout< ans=mp(1LL<<60,-1); chmin(ans,mp(f(f(A[0],A[1]),A[2]),0LL)); chmin(ans,mp(f(f(A[0],A[2]),A[1]),1LL)); chmin(ans,mp(f(f(A[1],A[2]),A[0]),2LL)); cout<> ans; cout<<0< S,T; while(1){ for(int i=0;i=2) break; ll x=f(A[S[0]],A[S[1]]); ans.push_back(mp(S[0],S[1])); A.erase(A.begin()+S[1]); A.erase(A.begin()+S[0]); A.push_back(x); S.clear(); T.clear(); } for(int i=0;i1){ for(int i=0;i1){ ans.push_back(mp(si(A)-2,si(A)-1)); A.pop_back(); } for(auto [a,b]:ans) cout<