Task: | burek |
Sender: | zxc |
Submission time: | 2016-08-02 15:32:21 +0300 |
Language: | C++ |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 100 |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.08 s | details |
#2 | ACCEPTED | 0.10 s | details |
#3 | ACCEPTED | 0.07 s | details |
#4 | ACCEPTED | 0.23 s | details |
#5 | ACCEPTED | 0.34 s | details |
#6 | ACCEPTED | 0.34 s | details |
#7 | ACCEPTED | 0.44 s | details |
#8 | ACCEPTED | 0.44 s | details |
Code
#include <bits/stdc++.h> using namespace std; const int MN = 1e7+100; int startV[MN]; int endV[MN]; int startH[MN]; int endH[MN]; int activeV[MN]; int activeH[MN]; int main() { int n; cin>>n; for(int i = 0; i < n; ++i) { vector<int> x(3); vector<int> y(3); for(int j = 0; j < 3; ++j) { cin>>x[j]>>y[j]; } sort(x.begin(), x.end()); sort(y.begin(), y.end()); if(y[0]+2 <= y[2]) { startV[y[0]+1]++; endV[y[2]-1]++; } if(x[0]+2 <= x[2]) { startH[x[0]+1]++; endH[x[2]-1]++; } } int sumV = 0; int sumH = 0; for(int i = 0; i < MN; ++i) { sumV += startV[i]; sumH += startH[i]; activeV[i] = sumV; activeH[i] += sumH; sumV -= endV[i]; sumH -= endH[i]; } int m; cin>>m; for(int i = 0; i < m; ++i) { char q, w; cin>>q>>w; int e; cin>>e; if(q == 'x') { cout<<activeH[e]<<'\n'; } else { cout<<activeV[e]<<'\n'; } } }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
3
1 0 0 2 2 2 1 3 3 5 4 0 5 4 4 5 4 4 4 ... |
correct output |
---|
0
1 1 2 |
user output |
---|
0 1 1 2 |
Test 2
Verdict: ACCEPTED
input |
---|
4
2 7 6 0 0 5 7 1 7 10 11 11 5 10 2 9 6 8 1 9 10 10 4 1 ... |
correct output |
---|
3
2 3 2 |
user output |
---|
3 2 3 2 |
Test 3
Verdict: ACCEPTED
input |
---|
10
84 4 53 58 73 85 60 24 59 23 1 11 80 69 61 57 83 91 84 91 3 97 1 94 ... |
correct output |
---|
0
4 1 1 5 ... |
user output |
---|
0 4 1 1 5 ... |
Test 4
Verdict: ACCEPTED
input |
---|
70000
523716 152076 196820 312652 75... |
correct output |
---|
3714
48672 41227 51089 19907 ... |
user output |
---|
3714 48672 41227 51089 19907 ... |
Test 5
Verdict: ACCEPTED
input |
---|
100000
554 492 443 655 24 170 867 578 502 743 73 276 738 487 297 633 494 469 753 268 131 447 924 530 ... |
correct output |
---|
73985
28536 71335 58180 74422 ... |
user output |
---|
73985 28536 71335 58180 74422 ... |
Test 6
Verdict: ACCEPTED
input |
---|
99999
556 490 167 620 238 60 214 608 982 363 975 378 557 111 872 233 227 61 58 477 37 808 578 225 ... |
correct output |
---|
57947
50886 46878 70092 16298 ... |
user output |
---|
57947 50886 46878 70092 16298 ... |
Test 7
Verdict: ACCEPTED
input |
---|
99999
521698 336192 884832 495601 73... |
correct output |
---|
2710
18050 45557 42424 4570 ... |
user output |
---|
2710 18050 45557 42424 4570 ... |
Test 8
Verdict: ACCEPTED
input |
---|
100000
702229 435001 483066 464189 74... |
correct output |
---|
66201
69812 28734 33874 14815 ... |
user output |
---|
66201 69812 28734 33874 14815 ... |