Submission #1179790


Source Code Expand

#include<bits/stdc++.h>

using namespace std;

typedef long long int64;
const int64 INF = 1LL << 58;

const int backet = 333;

int Q, K;
int64 T[100000], D[100000], A[100000];
vector< int64 > nums;
int64 sum[500], small[500], sub[500];

void push(int k)
{
  for(int i = k * backet; i < min((int) nums.size(), (k + 1) * backet); i++) {
    sum[i] -= sub[k];
  }
  sub[k] = 0;
}

int main()
{
  cin >> Q >> K;
  for(int i = 0; i < Q; i++) {
    cin >> T[i] >> D[i];
    if(T[i] == 1) cin >> A[i];
    nums.push_back(D[i]);
  }
  nums.push_back(0);
  sort(begin(nums), end(nums));
  nums.erase(unique(begin(nums), end(nums)), end(nums));
  int all = (nums.size() + backet - 1) / backet;

  for(int i = 0; i < Q; i++) {
    D[i] = lower_bound(begin(nums), end(nums), D[i]) - begin(nums);
  }

  for(int i = 1; i < nums.size(); i++) {
    sum[i] = nums[i] * K;
  }
  for(int j = 0; j < all; j++) {
    small[j] = sum[j * backet];
  }


  for(int i = 0; i < Q; i++) {
    if(T[i] == 2) {
      cout << nums[D[i]] * K - sum[D[i]] - sub[D[i] / backet] << endl;
    } else {
      int64 dec = A[i];
      int64 a = D[i], b = (int) nums.size();
      for(int j = 0; j < all; j++) {
        int64 l = j * backet, r = min((int) nums.size(), (j + 1) * backet);
        if(a >= r || b <= l) continue;
        if(a <= l && r <= b) {
          dec = min(dec, small[j] - sub[j]);
          sub[j] += dec;
        } else {
          push(j);
          for(int64 k = max(a, l); k < min(b, r); k++) {
            dec = min(dec, sum[k]);
            sum[k] -= dec;
            small[j] = min(small[j], sum[k]);
          }
        }
      }
    }
  }


}

Submission Info

Submission Time
Task D - 工場
User ei13333
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1705 Byte
Status RE
Exec Time 212 ms
Memory 3572 KB

Judge Result

Set Name Sample subtask All
Score / Max Score 0 / 0 0 / 600 0 / 400
Status
AC × 3
AC × 1
RE × 19
AC × 6
RE × 44
Set Name Test Cases
Sample sample1.txt, sample2.txt, sample3.txt
subtask sample2.txt, subin1.txt, subin10.txt, subin11.txt, subin12.txt, subin13.txt, subin14.txt, subin15.txt, subin16.txt, subin17.txt, subin18.txt, subin19.txt, subin2.txt, subin3.txt, subin4.txt, subin5.txt, subin6.txt, subin7.txt, subin8.txt, subin9.txt
All sample1.txt, sample2.txt, sample3.txt, in1.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in2.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in3.txt, in4.txt, in5.txt, in6.txt, in7.txt, in8.txt, in9.txt, sample1.txt, sample2.txt, sample3.txt, subin1.txt, subin10.txt, subin11.txt, subin12.txt, subin13.txt, subin14.txt, subin15.txt, subin16.txt, subin17.txt, subin18.txt, subin19.txt, subin2.txt, subin3.txt, subin4.txt, subin5.txt, subin6.txt, subin7.txt, subin8.txt, subin9.txt
Case Name Status Exec Time Memory
in1.txt RE 212 ms 3572 KB
in10.txt RE 190 ms 3444 KB
in11.txt RE 191 ms 3444 KB
in12.txt RE 189 ms 3444 KB
in13.txt RE 189 ms 3444 KB
in14.txt RE 189 ms 3444 KB
in15.txt RE 190 ms 3444 KB
in16.txt RE 164 ms 3444 KB
in17.txt RE 163 ms 3444 KB
in18.txt RE 163 ms 3444 KB
in19.txt RE 164 ms 3444 KB
in2.txt RE 174 ms 3444 KB
in20.txt RE 164 ms 3444 KB
in21.txt RE 181 ms 3444 KB
in22.txt RE 181 ms 3444 KB
in23.txt RE 168 ms 3444 KB
in24.txt RE 167 ms 3572 KB
in25.txt RE 168 ms 3572 KB
in3.txt RE 174 ms 3444 KB
in4.txt RE 181 ms 3444 KB
in5.txt RE 174 ms 3444 KB
in6.txt RE 189 ms 3444 KB
in7.txt RE 191 ms 3444 KB
in8.txt RE 193 ms 3444 KB
in9.txt RE 191 ms 3572 KB
sample1.txt AC 1 ms 256 KB
sample2.txt AC 1 ms 256 KB
sample3.txt AC 1 ms 256 KB
subin1.txt RE 194 ms 3444 KB
subin10.txt RE 190 ms 3444 KB
subin11.txt RE 193 ms 3572 KB
subin12.txt RE 192 ms 3572 KB
subin13.txt RE 192 ms 3572 KB
subin14.txt RE 192 ms 3572 KB
subin15.txt RE 191 ms 3572 KB
subin16.txt RE 172 ms 3572 KB
subin17.txt RE 169 ms 3572 KB
subin18.txt RE 170 ms 3444 KB
subin19.txt RE 168 ms 3572 KB
subin2.txt RE 193 ms 3444 KB
subin3.txt RE 194 ms 3444 KB
subin4.txt RE 192 ms 3444 KB
subin5.txt RE 195 ms 3444 KB
subin6.txt RE 200 ms 3444 KB
subin7.txt RE 193 ms 3444 KB
subin8.txt RE 191 ms 3444 KB
subin9.txt RE 195 ms 3444 KB