Submission #1692009


Source Code Expand

#include <algorithm>
#include <array>
#include <cassert>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <map>
#include <memory>
#include <numeric>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include <sstream>
#include <unordered_map>
#include <vector>


#define INF 4000000000000000000LL
#define MOD 1000000007
#define ALL(x) std::begin(x), std::end(x)


int main(int argc, char** argv)
{
  std::cin.tie(0);
  std::ios_base::sync_with_stdio(0);

  std::cout << std::fixed << std::setprecision(6);

  int N, a[333333];

  std::cin >> N;

  for (int i = 0; i < N * 3; i ++)
    std::cin >> a[i];

  std::multiset<int> set;

  long long s = 0, S[333333];

  for (int i = 0; i < N; i ++) {
    set.insert(a[i]);

    s += a[i];
  }

  S[N] = s;

  for (int i = N; i < N * 2; i ++) {
    set.insert(a[i]);

    s += a[i];

    s -= *std::begin(set);

    set.erase(std::begin(set));

    S[i + 1] = s;
  }

  long long dp = -INF;

  s = 0;

  set.clear();

  for (int i = N * 2; i < N * 3; i ++) {
    set.insert(a[i]);

    s += a[i];
  }

  dp = std::max(S[N * 2] - s, dp);
  
  for (int i = N * 2 - 1; i >= N; i --) {
    set.insert(a[i]);

    s += a[i];

    auto it = std::end(set);

    std::advance(it, -1);

    s -= *it;

    set.erase(it);

    dp = std::max(S[i] - s, dp);
  }

  std::cout << dp << std::endl;
  
  return 0;
}

Submission Info

Submission Time
Task D - 3N Numbers
User agw
Language C++14 (GCC 5.4.1)
Score 500
Code Size 1531 Byte
Status AC
Exec Time 147 ms
Memory 8192 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 2304 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
1_00.txt AC 2 ms 2304 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 1 ms 256 KB
1_03.txt AC 2 ms 2304 KB
1_04.txt AC 2 ms 2304 KB
1_05.txt AC 1 ms 256 KB
1_06.txt AC 2 ms 2304 KB
1_07.txt AC 1 ms 256 KB
1_08.txt AC 2 ms 384 KB
1_09.txt AC 2 ms 384 KB
1_10.txt AC 2 ms 2432 KB
1_11.txt AC 2 ms 2432 KB
1_12.txt AC 2 ms 2432 KB
1_13.txt AC 2 ms 2432 KB
1_14.txt AC 2 ms 384 KB
1_15.txt AC 2 ms 384 KB
1_16.txt AC 2 ms 384 KB
1_17.txt AC 2 ms 384 KB
1_18.txt AC 2 ms 384 KB
1_19.txt AC 2 ms 2432 KB
1_20.txt AC 2 ms 384 KB
1_21.txt AC 3 ms 2432 KB
1_22.txt AC 2 ms 384 KB
1_23.txt AC 2 ms 2432 KB
2_00.txt AC 107 ms 8192 KB
2_01.txt AC 120 ms 7808 KB
2_02.txt AC 110 ms 7808 KB
2_03.txt AC 112 ms 7808 KB
2_04.txt AC 93 ms 8192 KB
2_05.txt AC 117 ms 8064 KB
2_06.txt AC 96 ms 7808 KB
2_07.txt AC 103 ms 6912 KB
2_08.txt AC 65 ms 8064 KB
2_09.txt AC 63 ms 8064 KB
2_10.txt AC 66 ms 6912 KB
2_11.txt AC 64 ms 7680 KB
2_12.txt AC 145 ms 8064 KB
2_13.txt AC 147 ms 7808 KB
2_14.txt AC 147 ms 7936 KB
2_15.txt AC 147 ms 7808 KB