提交时间:2024-03-02 09:28:45
运行 ID: 133804
#include<iostream> #include<cstdio> #include<queue> using namespace std; priority_queue<int> qmax; priority_queue<int,vector<int>, greater<int> > qmin; int n,a[50005]; int main() { scanf("%d",&n); for(int i=1,temp;i<=n;++i) scanf("%d",&temp),qmax.push(temp),qmin.push(temp); for(int i=1;i<n;++i) { int maxx=qmax.top(); qmax.pop(); maxx*=qmax.top(); qmax.pop(); qmax.push(maxx+1); int minn=qmin.top(); qmin.pop(); minn*=qmin.top(); qmin.pop(); qmin.push(minn+1); } printf("%d\n",qmin.top()-qmax.top()); return 0; }