Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
108858 | 柯昊阳 | 数列极差问题 | C++ | 通过 | 100 | 0 MS | 252 KB | 608 | 2023-11-04 11:17:41 |
#include <bits/stdc++.h> using namespace std; priority_queue<int> mx; priority_queue<int,vector<int>,greater<int> > mn; int main(){ int n; cin>>n; while(n!=0){ for(int i = 0;i<n;i++){ int x; cin>>x; mx.push(x); mn.push(x); } while(mx.size()>1) { int tmp1 = mx.top(); mx.pop(); int tmp2 = mx.top(); mx.pop(); mx.push(tmp1*tmp2+1); } while(mn.size()>1){ int tmp1 = mn.top(); mn.pop(); int tmp2 = mn.top(); mn.pop(); mn.push(tmp1*tmp2+1); } cout<<mn.top()-mx.top()<<endl; mn.pop();mx.pop(); cin>>n; } return 0; }