#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; int main(){ ll N, A, a, b; cin >> N; multiset st; for (int i=0; i> A; st.insert(A); } if (N == 1){ cout << *st.begin() << endl; return 0; } if (N == 2){ cout << (*st.begin()) * (*st.rbegin()) << endl; return 0; } if (N % 2 == 1){ cout << 1 << endl; return 0; } while(st.size() > 2){ a = *st.begin(); st.erase(st.begin()); b = *st.begin(); st.erase(st.begin()); st.insert(a*b); st.erase(st.find(*st.rbegin())); st.erase(st.find(*st.rbegin())); st.insert(1); } cout << (*st.begin()) * (*st.rbegin()) << endl; return 0; }