Submission #845769

# Submission time Handle Problem Language Result Execution time Memory
845769 2023-09-06T15:21:05 Z Darren0724 Segments (IZhO18_segments) C++17
100 / 100
2271 ms 3116 KB
#pragma GCC optimize("Ofast","O3","unroll-loops")
#pragma GCC target("avx2")
#include <bits/stdc++.h>
using namespace std;

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n,t;cin>>n>>t;
    int ans=0;
    vector<int> a,b,h;
    for(int i=0;i<n;i++){
        int id;cin>>id;
        if(id==1){
            int c,d;cin>>c>>d;
            c^=(t*ans);
            d^=(t*ans);
            if(c>d){
                swap(c,d);
            }
            a.push_back(c);
            b.push_back(d);
            h.push_back(1);
        }
        if(id==2){
            int p;cin>>p;
            h[p-1]=0;
        }
        if(id==3){
            int c,d,k;cin>>c>>d>>k;
            c^=(t*ans);
            d^=(t*ans);
            if(c>d){
                swap(c,d);
            }
            ans=0;
            int sz=a.size();
            for(int j=0;j<sz;j++){
                if((b[j]<d?b[j]:d)-(a[j]>c?a[j]:c)+1>=k&&h[j]==1){
                    ans++;
                }
            }
            cout<<ans<<'\n';
        }
    }
 
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 2 ms 348 KB Output is correct
4 Correct 2 ms 344 KB Output is correct
5 Correct 2 ms 492 KB Output is correct
6 Correct 2 ms 344 KB Output is correct
7 Correct 2 ms 348 KB Output is correct
8 Correct 2 ms 348 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 3 ms 348 KB Output is correct
12 Correct 3 ms 344 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 2 ms 348 KB Output is correct
15 Correct 2 ms 348 KB Output is correct
16 Correct 2 ms 348 KB Output is correct
17 Correct 2 ms 348 KB Output is correct
18 Correct 2 ms 348 KB Output is correct
19 Correct 2 ms 348 KB Output is correct
20 Correct 2 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 505 ms 1448 KB Output is correct
2 Correct 543 ms 1392 KB Output is correct
3 Correct 497 ms 1624 KB Output is correct
4 Correct 521 ms 1476 KB Output is correct
5 Correct 122 ms 1736 KB Output is correct
6 Correct 75 ms 1744 KB Output is correct
7 Correct 533 ms 1436 KB Output is correct
8 Correct 501 ms 1240 KB Output is correct
9 Correct 491 ms 1580 KB Output is correct
10 Correct 306 ms 1224 KB Output is correct
11 Correct 354 ms 1168 KB Output is correct
12 Correct 445 ms 1496 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 118 ms 1220 KB Output is correct
2 Correct 109 ms 1264 KB Output is correct
3 Correct 125 ms 1336 KB Output is correct
4 Correct 111 ms 1252 KB Output is correct
5 Correct 441 ms 1684 KB Output is correct
6 Correct 492 ms 1544 KB Output is correct
7 Correct 468 ms 1500 KB Output is correct
8 Correct 121 ms 1724 KB Output is correct
9 Correct 87 ms 1692 KB Output is correct
10 Correct 268 ms 1488 KB Output is correct
11 Correct 124 ms 1364 KB Output is correct
12 Correct 183 ms 1528 KB Output is correct
13 Correct 212 ms 1544 KB Output is correct
14 Correct 225 ms 1340 KB Output is correct
15 Correct 225 ms 1232 KB Output is correct
16 Correct 170 ms 1248 KB Output is correct
17 Correct 502 ms 1460 KB Output is correct
18 Correct 506 ms 1288 KB Output is correct
19 Correct 519 ms 1576 KB Output is correct
20 Correct 498 ms 1236 KB Output is correct
21 Correct 131 ms 1364 KB Output is correct
22 Correct 237 ms 1348 KB Output is correct
23 Correct 213 ms 1692 KB Output is correct
24 Correct 215 ms 1364 KB Output is correct
25 Correct 115 ms 1336 KB Output is correct
26 Correct 112 ms 1236 KB Output is correct
27 Correct 112 ms 1232 KB Output is correct
28 Correct 121 ms 1236 KB Output is correct
29 Correct 219 ms 1476 KB Output is correct
30 Correct 244 ms 1496 KB Output is correct
31 Correct 73 ms 1500 KB Output is correct
32 Correct 185 ms 1500 KB Output is correct
33 Correct 203 ms 1576 KB Output is correct
34 Correct 186 ms 1232 KB Output is correct
35 Correct 208 ms 1236 KB Output is correct
36 Correct 191 ms 1492 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 119 ms 1296 KB Output is correct
2 Correct 113 ms 1288 KB Output is correct
3 Correct 112 ms 1232 KB Output is correct
4 Correct 111 ms 1260 KB Output is correct
5 Correct 381 ms 1580 KB Output is correct
6 Correct 269 ms 1248 KB Output is correct
7 Correct 306 ms 1836 KB Output is correct
8 Correct 298 ms 1208 KB Output is correct
9 Correct 202 ms 1424 KB Output is correct
10 Correct 168 ms 1500 KB Output is correct
11 Correct 152 ms 1216 KB Output is correct
12 Correct 51 ms 1728 KB Output is correct
13 Correct 201 ms 1616 KB Output is correct
14 Correct 208 ms 1240 KB Output is correct
15 Correct 82 ms 1500 KB Output is correct
16 Correct 200 ms 1624 KB Output is correct
17 Correct 514 ms 1236 KB Output is correct
18 Correct 505 ms 1732 KB Output is correct
19 Correct 531 ms 1448 KB Output is correct
20 Correct 523 ms 1292 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 2 ms 348 KB Output is correct
4 Correct 2 ms 344 KB Output is correct
5 Correct 2 ms 492 KB Output is correct
6 Correct 2 ms 344 KB Output is correct
7 Correct 2 ms 348 KB Output is correct
8 Correct 2 ms 348 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 3 ms 348 KB Output is correct
12 Correct 3 ms 344 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 2 ms 348 KB Output is correct
15 Correct 2 ms 348 KB Output is correct
16 Correct 2 ms 348 KB Output is correct
17 Correct 2 ms 348 KB Output is correct
18 Correct 2 ms 348 KB Output is correct
19 Correct 2 ms 348 KB Output is correct
20 Correct 2 ms 348 KB Output is correct
21 Correct 505 ms 1448 KB Output is correct
22 Correct 543 ms 1392 KB Output is correct
23 Correct 497 ms 1624 KB Output is correct
24 Correct 521 ms 1476 KB Output is correct
25 Correct 122 ms 1736 KB Output is correct
26 Correct 75 ms 1744 KB Output is correct
27 Correct 533 ms 1436 KB Output is correct
28 Correct 501 ms 1240 KB Output is correct
29 Correct 491 ms 1580 KB Output is correct
30 Correct 306 ms 1224 KB Output is correct
31 Correct 354 ms 1168 KB Output is correct
32 Correct 445 ms 1496 KB Output is correct
33 Correct 119 ms 1296 KB Output is correct
34 Correct 113 ms 1288 KB Output is correct
35 Correct 112 ms 1232 KB Output is correct
36 Correct 111 ms 1260 KB Output is correct
37 Correct 381 ms 1580 KB Output is correct
38 Correct 269 ms 1248 KB Output is correct
39 Correct 306 ms 1836 KB Output is correct
40 Correct 298 ms 1208 KB Output is correct
41 Correct 202 ms 1424 KB Output is correct
42 Correct 168 ms 1500 KB Output is correct
43 Correct 152 ms 1216 KB Output is correct
44 Correct 51 ms 1728 KB Output is correct
45 Correct 201 ms 1616 KB Output is correct
46 Correct 208 ms 1240 KB Output is correct
47 Correct 82 ms 1500 KB Output is correct
48 Correct 200 ms 1624 KB Output is correct
49 Correct 514 ms 1236 KB Output is correct
50 Correct 505 ms 1732 KB Output is correct
51 Correct 531 ms 1448 KB Output is correct
52 Correct 523 ms 1292 KB Output is correct
53 Correct 131 ms 1228 KB Output is correct
54 Correct 129 ms 1232 KB Output is correct
55 Correct 114 ms 1232 KB Output is correct
56 Correct 113 ms 1272 KB Output is correct
57 Correct 380 ms 1104 KB Output is correct
58 Correct 171 ms 848 KB Output is correct
59 Correct 521 ms 1492 KB Output is correct
60 Correct 145 ms 1004 KB Output is correct
61 Correct 207 ms 1604 KB Output is correct
62 Correct 119 ms 1780 KB Output is correct
63 Correct 69 ms 1556 KB Output is correct
64 Correct 98 ms 1652 KB Output is correct
65 Correct 177 ms 1252 KB Output is correct
66 Correct 176 ms 1304 KB Output is correct
67 Correct 205 ms 1580 KB Output is correct
68 Correct 200 ms 1236 KB Output is correct
69 Correct 494 ms 1296 KB Output is correct
70 Correct 574 ms 1712 KB Output is correct
71 Correct 521 ms 1384 KB Output is correct
72 Correct 500 ms 1472 KB Output is correct
73 Correct 193 ms 1196 KB Output is correct
74 Correct 206 ms 1240 KB Output is correct
75 Correct 33 ms 1740 KB Output is correct
76 Correct 64 ms 1716 KB Output is correct
77 Correct 133 ms 1232 KB Output is correct
78 Correct 116 ms 1220 KB Output is correct
79 Correct 119 ms 1212 KB Output is correct
80 Correct 115 ms 1252 KB Output is correct
81 Correct 204 ms 1364 KB Output is correct
82 Correct 195 ms 1496 KB Output is correct
83 Correct 152 ms 1220 KB Output is correct
84 Correct 210 ms 1236 KB Output is correct
85 Correct 194 ms 1500 KB Output is correct
86 Correct 178 ms 1500 KB Output is correct
87 Correct 201 ms 1236 KB Output is correct
88 Correct 152 ms 1228 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 2 ms 348 KB Output is correct
4 Correct 2 ms 344 KB Output is correct
5 Correct 2 ms 492 KB Output is correct
6 Correct 2 ms 344 KB Output is correct
7 Correct 2 ms 348 KB Output is correct
8 Correct 2 ms 348 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 3 ms 348 KB Output is correct
12 Correct 3 ms 344 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 2 ms 348 KB Output is correct
15 Correct 2 ms 348 KB Output is correct
16 Correct 2 ms 348 KB Output is correct
17 Correct 2 ms 348 KB Output is correct
18 Correct 2 ms 348 KB Output is correct
19 Correct 2 ms 348 KB Output is correct
20 Correct 2 ms 348 KB Output is correct
21 Correct 505 ms 1448 KB Output is correct
22 Correct 543 ms 1392 KB Output is correct
23 Correct 497 ms 1624 KB Output is correct
24 Correct 521 ms 1476 KB Output is correct
25 Correct 122 ms 1736 KB Output is correct
26 Correct 75 ms 1744 KB Output is correct
27 Correct 533 ms 1436 KB Output is correct
28 Correct 501 ms 1240 KB Output is correct
29 Correct 491 ms 1580 KB Output is correct
30 Correct 306 ms 1224 KB Output is correct
31 Correct 354 ms 1168 KB Output is correct
32 Correct 445 ms 1496 KB Output is correct
33 Correct 118 ms 1220 KB Output is correct
34 Correct 109 ms 1264 KB Output is correct
35 Correct 125 ms 1336 KB Output is correct
36 Correct 111 ms 1252 KB Output is correct
37 Correct 441 ms 1684 KB Output is correct
38 Correct 492 ms 1544 KB Output is correct
39 Correct 468 ms 1500 KB Output is correct
40 Correct 121 ms 1724 KB Output is correct
41 Correct 87 ms 1692 KB Output is correct
42 Correct 268 ms 1488 KB Output is correct
43 Correct 124 ms 1364 KB Output is correct
44 Correct 183 ms 1528 KB Output is correct
45 Correct 212 ms 1544 KB Output is correct
46 Correct 225 ms 1340 KB Output is correct
47 Correct 225 ms 1232 KB Output is correct
48 Correct 170 ms 1248 KB Output is correct
49 Correct 502 ms 1460 KB Output is correct
50 Correct 506 ms 1288 KB Output is correct
51 Correct 519 ms 1576 KB Output is correct
52 Correct 498 ms 1236 KB Output is correct
53 Correct 131 ms 1364 KB Output is correct
54 Correct 237 ms 1348 KB Output is correct
55 Correct 213 ms 1692 KB Output is correct
56 Correct 215 ms 1364 KB Output is correct
57 Correct 115 ms 1336 KB Output is correct
58 Correct 112 ms 1236 KB Output is correct
59 Correct 112 ms 1232 KB Output is correct
60 Correct 121 ms 1236 KB Output is correct
61 Correct 219 ms 1476 KB Output is correct
62 Correct 244 ms 1496 KB Output is correct
63 Correct 73 ms 1500 KB Output is correct
64 Correct 185 ms 1500 KB Output is correct
65 Correct 203 ms 1576 KB Output is correct
66 Correct 186 ms 1232 KB Output is correct
67 Correct 208 ms 1236 KB Output is correct
68 Correct 191 ms 1492 KB Output is correct
69 Correct 119 ms 1296 KB Output is correct
70 Correct 113 ms 1288 KB Output is correct
71 Correct 112 ms 1232 KB Output is correct
72 Correct 111 ms 1260 KB Output is correct
73 Correct 381 ms 1580 KB Output is correct
74 Correct 269 ms 1248 KB Output is correct
75 Correct 306 ms 1836 KB Output is correct
76 Correct 298 ms 1208 KB Output is correct
77 Correct 202 ms 1424 KB Output is correct
78 Correct 168 ms 1500 KB Output is correct
79 Correct 152 ms 1216 KB Output is correct
80 Correct 51 ms 1728 KB Output is correct
81 Correct 201 ms 1616 KB Output is correct
82 Correct 208 ms 1240 KB Output is correct
83 Correct 82 ms 1500 KB Output is correct
84 Correct 200 ms 1624 KB Output is correct
85 Correct 514 ms 1236 KB Output is correct
86 Correct 505 ms 1732 KB Output is correct
87 Correct 531 ms 1448 KB Output is correct
88 Correct 523 ms 1292 KB Output is correct
89 Correct 131 ms 1228 KB Output is correct
90 Correct 129 ms 1232 KB Output is correct
91 Correct 114 ms 1232 KB Output is correct
92 Correct 113 ms 1272 KB Output is correct
93 Correct 380 ms 1104 KB Output is correct
94 Correct 171 ms 848 KB Output is correct
95 Correct 521 ms 1492 KB Output is correct
96 Correct 145 ms 1004 KB Output is correct
97 Correct 207 ms 1604 KB Output is correct
98 Correct 119 ms 1780 KB Output is correct
99 Correct 69 ms 1556 KB Output is correct
100 Correct 98 ms 1652 KB Output is correct
101 Correct 177 ms 1252 KB Output is correct
102 Correct 176 ms 1304 KB Output is correct
103 Correct 205 ms 1580 KB Output is correct
104 Correct 200 ms 1236 KB Output is correct
105 Correct 494 ms 1296 KB Output is correct
106 Correct 574 ms 1712 KB Output is correct
107 Correct 521 ms 1384 KB Output is correct
108 Correct 500 ms 1472 KB Output is correct
109 Correct 193 ms 1196 KB Output is correct
110 Correct 206 ms 1240 KB Output is correct
111 Correct 33 ms 1740 KB Output is correct
112 Correct 64 ms 1716 KB Output is correct
113 Correct 133 ms 1232 KB Output is correct
114 Correct 116 ms 1220 KB Output is correct
115 Correct 119 ms 1212 KB Output is correct
116 Correct 115 ms 1252 KB Output is correct
117 Correct 204 ms 1364 KB Output is correct
118 Correct 195 ms 1496 KB Output is correct
119 Correct 152 ms 1220 KB Output is correct
120 Correct 210 ms 1236 KB Output is correct
121 Correct 194 ms 1500 KB Output is correct
122 Correct 178 ms 1500 KB Output is correct
123 Correct 201 ms 1236 KB Output is correct
124 Correct 152 ms 1228 KB Output is correct
125 Correct 456 ms 1608 KB Output is correct
126 Correct 454 ms 1980 KB Output is correct
127 Correct 438 ms 1752 KB Output is correct
128 Correct 442 ms 1796 KB Output is correct
129 Correct 429 ms 1748 KB Output is correct
130 Correct 453 ms 2064 KB Output is correct
131 Correct 620 ms 1620 KB Output is correct
132 Correct 2001 ms 2356 KB Output is correct
133 Correct 1851 ms 2764 KB Output is correct
134 Correct 947 ms 1688 KB Output is correct
135 Correct 1741 ms 2576 KB Output is correct
136 Correct 185 ms 1364 KB Output is correct
137 Correct 323 ms 2948 KB Output is correct
138 Correct 803 ms 2616 KB Output is correct
139 Correct 646 ms 2512 KB Output is correct
140 Correct 447 ms 2704 KB Output is correct
141 Correct 725 ms 2644 KB Output is correct
142 Correct 554 ms 2112 KB Output is correct
143 Correct 737 ms 2000 KB Output is correct
144 Correct 501 ms 1896 KB Output is correct
145 Correct 450 ms 3116 KB Output is correct
146 Correct 854 ms 2580 KB Output is correct
147 Correct 710 ms 1984 KB Output is correct
148 Correct 711 ms 1760 KB Output is correct
149 Correct 2045 ms 2552 KB Output is correct
150 Correct 2180 ms 2332 KB Output is correct
151 Correct 2155 ms 2408 KB Output is correct
152 Correct 2212 ms 2352 KB Output is correct
153 Correct 2271 ms 2508 KB Output is correct
154 Correct 2105 ms 2344 KB Output is correct
155 Correct 650 ms 1952 KB Output is correct
156 Correct 767 ms 1988 KB Output is correct
157 Correct 530 ms 2816 KB Output is correct
158 Correct 344 ms 2744 KB Output is correct
159 Correct 856 ms 2804 KB Output is correct
160 Correct 851 ms 2268 KB Output is correct
161 Correct 483 ms 2204 KB Output is correct
162 Correct 439 ms 1744 KB Output is correct
163 Correct 468 ms 1816 KB Output is correct
164 Correct 459 ms 1848 KB Output is correct
165 Correct 480 ms 1780 KB Output is correct
166 Correct 462 ms 1816 KB Output is correct
167 Correct 270 ms 2748 KB Output is correct
168 Correct 255 ms 2832 KB Output is correct
169 Correct 451 ms 2640 KB Output is correct
170 Correct 554 ms 2700 KB Output is correct
171 Correct 866 ms 2664 KB Output is correct
172 Correct 820 ms 2088 KB Output is correct
173 Correct 396 ms 2716 KB Output is correct
174 Correct 831 ms 1984 KB Output is correct
175 Correct 694 ms 2616 KB Output is correct
176 Correct 721 ms 2016 KB Output is correct
177 Correct 821 ms 2700 KB Output is correct
178 Correct 821 ms 2808 KB Output is correct