AcWing 1238. 日志统计
原题链接
中等
作者:
低手哥
,
2021-03-24 14:04:47
,
所有人可见
,
阅读 381
(暴力枚举)
C++ 代码
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
set<int> res;
int n,D,K;
vector<int> Time[N];
int main()
{
cin >> n >> D >> K;
for(int i = 0 ; i < n ; i++)
{
int ts,id;
cin >> ts >> id;
Time[ts].push_back(id);
}
map<int,int> current;
for(int i = 0 ; i < D ; i++ )
for(auto u : Time[i])
current[u]++;
for(int i = D ; i < N ; i++)
{
for(auto u : Time[i-D])
{
if(current[u]>=K) res.insert(u);
current[u]--;
}
for(auto u : Time[i])
current[u]++;
}
for(auto u : current)
if(u.second>=K) res.insert(u.first);
for(auto u : res)
cout << u << endl;
return 0;
}