Submission #3015850


Source Code Expand

#include<iostream>
#include<string>
#include<cmath>
#include<cstdlib>
#include<vector>
#include<map>
#include<set>
#include<algorithm>
#include<queue>

using namespace std;

long long MOD = 1000000007;

int n;
long long a[300005];
long long ma[300005];
long long mi[300005];

int main(){
  cin>>n;
  for(int i=0;i<3*n;i++){
    cin>>a[i];
  }

  long long total = 0LL;
  for(int i=0;i<n;i++) total+=a[i];
  ma[n-1] = total;
  priority_queue<long long> pqma;
  for(int i=0;i<n;i++) pqma.push(-a[i]);
  for(int i=n;i<2*n;i++){
    long long tmp = -pqma.top();
    if(tmp < a[i]){
      pqma.pop();
      pqma.push(-a[i]);
      total -= tmp;
      total += a[i];
    }
    ma[i] = total;
  }

  total = 0LL;
  for(int i=3*n-1;i>=2*n;i--) total += a[i];
  mi[2*n] = total;
  priority_queue<long long> pqmi;
  for(int i=3*n-1;i>=2*n;i--) pqmi.push(a[i]);
  for(int i=2*n-1;i>=n;i--){
    long long tmp = pqmi.top();
    if(tmp > a[i]){
      pqmi.pop();
      pqmi.push(a[i]);
      total -= tmp;
      total += a[i];
    }
    mi[i] = total;
  }

  long long ans = ma[n-1]-mi[n];
  for(int i=n+1;i<=2*n;i++){
    ans = max(ans, ma[i-1]-mi[i]);
  }

  //for(int i=0;i<3*n;i++)cout<<a[i]<<" ";cout<<endl;
  //for(int i=0;i<3*n;i++)cout<<ma[i]<<" ";cout<<endl;
  //for(int i=0;i<3*n;i++)cout<<mi[i]<<" ";cout<<endl;
  cout<<ans<<endl;

  return 0;
}

Submission Info

Submission Time
Task D - 3N Numbers
User kaming
Language C++14 (GCC 5.4.1)
Score 500
Code Size 1411 Byte
Status AC
Exec Time 141 ms
Memory 7668 KB

Judge Result

Set Name Sample Subtask All
Score / Max Score 0 / 0 300 / 300 200 / 200
Status
AC × 3
AC × 27
AC × 43
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt
Subtask 0_00.txt, 0_01.txt, 0_02.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 2_00.txt, 2_01.txt, 2_02.txt, 2_03.txt, 2_04.txt, 2_05.txt, 2_06.txt, 2_07.txt, 2_08.txt, 2_09.txt, 2_10.txt, 2_11.txt, 2_12.txt, 2_13.txt, 2_14.txt, 2_15.txt
Case Name Status Exec Time Memory
0_00.txt AC 2 ms 4352 KB
0_01.txt AC 2 ms 4352 KB
0_02.txt AC 2 ms 4352 KB
1_00.txt AC 2 ms 4352 KB
1_01.txt AC 2 ms 4352 KB
1_02.txt AC 2 ms 4352 KB
1_03.txt AC 2 ms 4352 KB
1_04.txt AC 2 ms 4352 KB
1_05.txt AC 2 ms 4352 KB
1_06.txt AC 2 ms 4352 KB
1_07.txt AC 2 ms 4352 KB
1_08.txt AC 2 ms 4352 KB
1_09.txt AC 3 ms 4352 KB
1_10.txt AC 3 ms 4352 KB
1_11.txt AC 3 ms 4352 KB
1_12.txt AC 3 ms 4352 KB
1_13.txt AC 3 ms 4352 KB
1_14.txt AC 3 ms 4352 KB
1_15.txt AC 3 ms 4352 KB
1_16.txt AC 3 ms 4352 KB
1_17.txt AC 3 ms 4352 KB
1_18.txt AC 3 ms 4352 KB
1_19.txt AC 3 ms 4352 KB
1_20.txt AC 3 ms 4352 KB
1_21.txt AC 3 ms 4352 KB
1_22.txt AC 3 ms 4352 KB
1_23.txt AC 3 ms 4352 KB
2_00.txt AC 50 ms 7668 KB
2_01.txt AC 130 ms 7668 KB
2_02.txt AC 111 ms 7668 KB
2_03.txt AC 106 ms 7668 KB
2_04.txt AC 106 ms 7668 KB
2_05.txt AC 106 ms 7668 KB
2_06.txt AC 105 ms 7668 KB
2_07.txt AC 100 ms 7668 KB
2_08.txt AC 56 ms 7668 KB
2_09.txt AC 55 ms 7668 KB
2_10.txt AC 56 ms 7668 KB
2_11.txt AC 55 ms 7668 KB
2_12.txt AC 139 ms 7668 KB
2_13.txt AC 140 ms 7668 KB
2_14.txt AC 141 ms 7668 KB
2_15.txt AC 140 ms 7668 KB