模拟 双指针
#include<iostream>
#include<algorithm>
using namespace std;
using ll = long long;
#define int long long
const int N = 1e5+10;
const int inf = 0x3f3f3f3f;
const int mod = 1e9+7;
int n,m,ts;
bool vis[N];
int a[N];
int last[N];
pair<int,int>query[N];
void solve()
{
cin>>n>>m>>ts;
for(int i=1;i<=m;i++){
int a,b;cin>>a>>b;
query[i] = {a,b};
}
sort(query+1,query+1+m);
for(int i=1;i<=m;){
int j = i;
while(j+1<=m&&query[j+1].second==query[i].second)j++;
int len = j-i+1;
int t = query[i].first,id = query[i].second;
//t-1 last[t]