AtCoder Beginner Contest #127
問題文
省略
省略
C++に変換後のコードはこちら
int Q, TYPE, A, B;
{
int i, j;
multiset<int> s1, s2;
ll sum1 = 0, sum2 = 0;
ll sum = 0, res1, res2;
rd(Q);
rep(Q){
rd(TYPE);
if(TYPE==1){
rd(A,B);
if(s1.size() <= s2.size()){
s1.insert(A);
sum1 += A;
} else {
s2.insert(A);
sum2 += A;
}
sum += B;
} else {
while(s2.size() && getLast(s1) > getFirst(s2)){
i = popLast(s1);
j = popFirst(s2);
s1.insert(j);
s2.insert(i);
sum1 += j - i;
sum2 += i - j;
}
res1 = getLast(s1);
res2 = sum;
res2 += res1 * s1.size() - sum1;
res2 += sum2 - res1 * s2.size();
wt(res1, res2);
}
}
}
Current time: 2024年04月19日15時34分56秒
Last modified: 2019年05月26日00時11分59秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC127 ABC_F
トップページに戻る
Logged in as: unknown user (not login)