https://codeforces.com/contest/2014/problem/D

#include <iostream>
#include <queue>
#include <cmath>
#include <array>
#include <sstream>
#include <vector>
#include <deque>
#include <iterator>
#include <numeric>
int main() {
    int o;
    std::cin>>o;
    while (o--){
        int n,d,k;
        std::cin>>n>>d>>k;
        std::vector<int> vl(n+1,0);
        std::vector<int> vr(n+1,0);
        while (k--){
            int l,r;
            std::cin>>l>>r;
            l--;
            vl[l]++;
            vr[r]++;
        }
        std::partial_sum(vr.begin(),vr.end(),vr.begin());
        std::partial_sum(vl.rbegin(),vl.rend(),vl.rbegin());
        int max=-1;
        int imx=-1;
        int min=INT_MAX;
        int imn=-1;
        for (int i = 0; i <= n - d; ++i) {
            int v=vr[i]+vl[i+d];
            if (v>max){
                max=v;
                imx=i+1;
            }
            if (v<min){
                min=v;
                imn=i+1;
            }
        }
        std::cout<<imn<<" "<<imx<<'\n';
    }
    return 0;
}