107762024-04-12 00:39:5342Telefonközpontpython3Időlimit túllépés 40/100575ms17576 KiB
from sys import stdin
input=stdin.readline

class SegmentTree:
    def __init__(self):
        self.tree = None
    def buildTree(self,List):
        n = len(List)
        self.tree = [0 for i in range(2*n)]
        for i in range(n):
            self.tree[i+n] = List[i]
        for i in range(n-1,0,-1):
            self.tree[i] = max(self.tree[i<<1],self.tree[i<<1 | 1])
    def maxInRange(self, left, right):
        n = len(self.tree)//2
        result = 0
        left += n
        right += n
        while left<right:
            if left&1:
                result = max(result, self.tree[left])
                left += 1
            if right&1:
                right -= 1
                result = max(result, self.tree[right])
            left >>= 1
            right >>= 1
        return result

def main():
    M,N,Q = [int(x) for x in input().split()]
    start=[0]*(M+1)
    end=[0]*(M+1)
    for i in range(N):
        A,B = [int(x) for x in input().split()]
        start[A]+=1
        end[B]+=1
    darab=[0]*(M+1)
    cur=0
    for i in range(1,M+1):
        cur+=start[i]
        darab[i]=cur
        cur-=end[i]
    segmentTree = SegmentTree()
    segmentTree.buildTree(darab)
    for i in range(Q):
        A,B = [int(x) for x in input().split()]
        print(segmentTree.maxInRange(A,B+1))
        
main()
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva18ms11776 KiB
2Elfogadva19ms11944 KiB
subtask220/20
3Elfogadva20ms12104 KiB
4Elfogadva20ms12308 KiB
5Elfogadva20ms12672 KiB
6Elfogadva20ms12792 KiB
7Elfogadva19ms12696 KiB
8Elfogadva20ms13008 KiB
9Elfogadva19ms12924 KiB
subtask320/20
10Elfogadva20ms12104 KiB
11Elfogadva20ms12308 KiB
12Elfogadva20ms12672 KiB
13Elfogadva20ms12792 KiB
14Elfogadva19ms12696 KiB
15Elfogadva20ms13008 KiB
16Elfogadva19ms12924 KiB
17Elfogadva57ms14004 KiB
18Elfogadva59ms14216 KiB
19Elfogadva52ms14292 KiB
20Elfogadva52ms14304 KiB
21Elfogadva52ms14872 KiB
22Elfogadva52ms14608 KiB
23Elfogadva54ms14728 KiB
subtask40/60
24Elfogadva20ms12104 KiB
25Elfogadva20ms12308 KiB
26Elfogadva20ms12672 KiB
27Elfogadva20ms12792 KiB
28Elfogadva19ms12696 KiB
29Elfogadva20ms13008 KiB
30Elfogadva19ms12924 KiB
31Elfogadva57ms14004 KiB
32Elfogadva59ms14216 KiB
33Elfogadva52ms14292 KiB
34Elfogadva52ms14304 KiB
35Elfogadva52ms14872 KiB
36Elfogadva52ms14608 KiB
37Elfogadva54ms14728 KiB
38Időlimit túllépés575ms17388 KiB
39Időlimit túllépés556ms17420 KiB
40Időlimit túllépés560ms17576 KiB
41Időlimit túllépés560ms17420 KiB
42Időlimit túllépés524ms17500 KiB
43Időlimit túllépés550ms17444 KiB
44Időlimit túllépés558ms17460 KiB