180652025-09-26 09:53:17ercseferencTelefonközpontcpp17Runtime error 40/100137ms2360 KiB
#include <bits/stdc++.h>
using namespace std;
int lg(int a){
    int t=0;
    while(a>0){a=a/2; t++;}
    return t-1;}
int main()
{
    int m,n,q; cin>>m>>n>>q;
    int sp[20002][18];
    vector<int>a(m+1);
    fill(a.begin(),a.end(),0);
    for(int i=0; i<n; i++){
        int x,y; cin>>x>>y; a[x]++; a[y+1]--;}
    for(int i=2; i<=m+1; i++){a[i]+=a[i-1]; sp[i][0]=a[i];}
    for(int j=1; j<18; j++)
        for(int i=1; i+(1<<(j-1))<=m; i++)
            sp[i][j]=max(sp[i][j-1],sp[i+(1<<(j-1))][j-1]);
    for(int i=0; i<q; i++){
        int x,y; cin>>x>>y; int t=lg(y-x+1);
        cout<<max(sp[x][t],sp[y-(1<<t)+1][t])<<endl;}
    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms316 KiB
2Accepted1ms508 KiB
subtask220/20
3Accepted2ms376 KiB
4Accepted2ms316 KiB
5Accepted2ms316 KiB
6Accepted2ms316 KiB
7Accepted2ms316 KiB
8Accepted2ms548 KiB
9Accepted2ms316 KiB
subtask320/20
10Accepted2ms376 KiB
11Accepted2ms316 KiB
12Accepted2ms316 KiB
13Accepted2ms316 KiB
14Accepted2ms316 KiB
15Accepted2ms548 KiB
16Accepted2ms316 KiB
17Accepted12ms696 KiB
18Accepted12ms564 KiB
19Accepted12ms688 KiB
20Accepted12ms708 KiB
21Accepted12ms756 KiB
22Accepted12ms564 KiB
23Accepted12ms564 KiB
subtask40/60
24Accepted2ms376 KiB
25Accepted2ms316 KiB
26Accepted2ms316 KiB
27Accepted2ms316 KiB
28Accepted2ms316 KiB
29Accepted2ms548 KiB
30Accepted2ms316 KiB
31Accepted12ms696 KiB
32Accepted12ms564 KiB
33Accepted12ms688 KiB
34Accepted12ms708 KiB
35Accepted12ms756 KiB
36Accepted12ms564 KiB
37Accepted12ms564 KiB
38Runtime error137ms2356 KiB
39Runtime error136ms2296 KiB
40Runtime error136ms2292 KiB
41Runtime error136ms2296 KiB
42Runtime error137ms2356 KiB
43Runtime error136ms2284 KiB
44Runtime error129ms2360 KiB