提交时间:2024-03-02 08:38:26
运行 ID: 133621
#include <bits/stdc++.h> #define int long long using namespace std; int n; priority_queue<int> que1; priority_queue<int> que2; signed main() { while (~scanf("%lld", &n) && n) { while (!que1.empty()) que1.pop(); while (!que2.empty()) que2.pop(); for (int i=1; i<=n; i++) { int x; scanf("%lld", &x); que1.push(x); que2.push(-x); } while (que1.size() > 1) { int a = que1.top(); que1.pop(); int b = que1.top(); que1.pop(); que1.push(a*b+1); } while (que2.size() > 1) { int a = -que2.top(); que2.pop(); int b = -que2.top(); que2.pop(); que2.push(-(a*b+1)); } printf("%lld\n", abs(que1.top()-(-que2.top()))); } return 0; }