Submission #2601703
Source Code Expand
#include<iostream> #include<algorithm> #include<set> #include<vector> using namespace std; typedef long long Int; vector<Int> week[108000]; multiset<Int> holiday; Int y, w, n, m, d, b, c, a[108000]; Int res; void add_holiday(Int x){ if(holiday.count(x)){ holiday.insert(x); return; } Int left = -1; Int right = -1; multiset<Int>::iterator it; it = holiday.upper_bound(x); if(it != holiday.end())right = *it; if(it != holiday.begin())left = *(--it); holiday.insert(x); if(left != -1 && right != -1 && (right - left -1) <= d)return; res++; if(left != -1 && x - left - 1 <= d)res += x-left-1; if(right != -1 && right - x - 1 <= d)res += right-x-1; return; } void rm_holiday(Int x){ if(holiday.count(x)>1 ){ holiday.erase(holiday.find(x)); return; } Int left = -1; Int right = -1; multiset<Int>::iterator it; it = holiday.upper_bound(x); if(it != holiday.end())right = *it; it = holiday.lower_bound(x); if(it != holiday.begin())left = *(--it); holiday.erase(x); if(left != -1 && right != -1 && (right - left -1) <= d)return; res--; if(left != -1 && x - left - 1 <= d)res -= x-left-1; if(right != -1 && right - x - 1 <= d)res -= right-x-1; return; } int main(){ cin >> y >> w; cin >> n >> m >> d; for(Int i = 0;i < n;i++){ cin >> a[i],a[i]--; add_holiday(a[i]); } for(Int i = 0;i < m;i++){ cin >> b >> c;b--,c--; week[c].push_back(b); add_holiday(w*b+c); } for(Int i = 0;i < w;i++){ cout << res << endl; for(Int j = 0;j < week[i].size();j++){ int ww = week[i][j]; rm_holiday(ww*w+i); add_holiday((ww+1)*w+i); } for(Int j = 0;j < n;j++){ rm_holiday(a[j]+i); add_holiday(a[j]+i+1); } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - 祝日 |
User | catupper |
Language | C++14 (Clang 3.8.0) |
Score | 700 |
Code Size | 1749 Byte |
Status | AC |
Exec Time | 3654 ms |
Memory | 12544 KB |
Judge Result
Set Name | Sample | Subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | 100 / 100 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt |
Subtask1 | 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, sample-01.txt, sample-02.txt |
All | 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, 02-25.txt, 02-26.txt, 02-27.txt, 02-28.txt, 02-29.txt, 02-30.txt, 02-31.txt, 02-32.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 602 ms | 11008 KB |
01-02.txt | AC | 510 ms | 10112 KB |
01-03.txt | AC | 357 ms | 8448 KB |
01-04.txt | AC | 116 ms | 4736 KB |
01-05.txt | AC | 363 ms | 9088 KB |
01-06.txt | AC | 327 ms | 8576 KB |
01-07.txt | AC | 301 ms | 8304 KB |
01-08.txt | AC | 105 ms | 4736 KB |
01-09.txt | AC | 540 ms | 9728 KB |
01-10.txt | AC | 93 ms | 4352 KB |
01-11.txt | AC | 450 ms | 10112 KB |
01-12.txt | AC | 416 ms | 9856 KB |
01-13.txt | AC | 519 ms | 10112 KB |
01-14.txt | AC | 172 ms | 6144 KB |
01-15.txt | AC | 396 ms | 9344 KB |
01-16.txt | AC | 77 ms | 2816 KB |
01-17.txt | AC | 71 ms | 4480 KB |
01-18.txt | AC | 307 ms | 8576 KB |
01-19.txt | AC | 604 ms | 11776 KB |
01-20.txt | AC | 544 ms | 10368 KB |
02-01.txt | AC | 2310 ms | 11008 KB |
02-02.txt | AC | 792 ms | 9472 KB |
02-03.txt | AC | 1153 ms | 10240 KB |
02-04.txt | AC | 1623 ms | 10368 KB |
02-05.txt | AC | 1933 ms | 11648 KB |
02-06.txt | AC | 1181 ms | 9472 KB |
02-07.txt | AC | 305 ms | 8304 KB |
02-08.txt | AC | 286 ms | 3712 KB |
02-09.txt | AC | 2087 ms | 10240 KB |
02-10.txt | AC | 164 ms | 4096 KB |
02-11.txt | AC | 2047 ms | 12544 KB |
02-12.txt | AC | 690 ms | 9728 KB |
02-13.txt | AC | 875 ms | 9344 KB |
02-14.txt | AC | 154 ms | 3840 KB |
02-15.txt | AC | 670 ms | 9216 KB |
02-16.txt | AC | 43 ms | 2816 KB |
02-17.txt | AC | 100 ms | 4480 KB |
02-18.txt | AC | 356 ms | 8576 KB |
02-19.txt | AC | 2316 ms | 11008 KB |
02-20.txt | AC | 309 ms | 8308 KB |
02-21.txt | AC | 486 ms | 3584 KB |
02-22.txt | AC | 3 ms | 2816 KB |
02-23.txt | AC | 3654 ms | 11264 KB |
02-24.txt | AC | 1929 ms | 9472 KB |
02-25.txt | AC | 1363 ms | 11520 KB |
02-26.txt | AC | 4 ms | 2816 KB |
02-27.txt | AC | 117 ms | 2944 KB |
02-28.txt | AC | 499 ms | 3200 KB |
02-29.txt | AC | 281 ms | 8320 KB |
02-30.txt | AC | 281 ms | 8320 KB |
02-31.txt | AC | 280 ms | 8320 KB |
02-32.txt | AC | 285 ms | 3072 KB |
sample-01.txt | AC | 2 ms | 2816 KB |
sample-02.txt | AC | 2 ms | 2816 KB |
sample-03.txt | AC | 2 ms | 2816 KB |
sample-04.txt | AC | 2 ms | 2816 KB |