#7 WA了求hack

P8661 [蓝桥杯 2018 省 B] 日志统计

Ning24 @ 2024-04-06 12:58:31

#include<bits/stdc++.h>
#define endl '\n'
//#define int long long
using namespace std;
typedef long long ll; 
typedef pair<int, int> PII; 
const int N = 2e5+10;
ll n, m, k,sum;
struct node{
    int ts,id;
}a[100005];

int cmp(node a,node b){
    return a.id==b.id?a.ts<b.ts:a.id<b.id;
}

void sovle(){
    cin>>n>>m>>k;
    for(int i=0;i<n;i++){
        cin>>a[i].ts>>a[i].id;
    }    
    set<int>v;
    sort(a,a+n,cmp);
    int w=1;
    int head=a[0].ts;
    if(k==1){
        v.insert(a[0].id);  
    }
    for(int i=1;i<n;i++){
        if(a[i-1].id==a[i].id&&a[i].ts-head<m){
            w++;
        }
        else if(a[i-1].id!=a[i].id){
            head=a[i].ts;
            w=1;
        }
        else if(a[i].id==a[i-1].id&&a[i].ts-head>=m){
            head=a[i].ts;
            w=1;
        }
        if(w==k){
              v.insert(a[i].id);
              w=1;
        }
    }
    while(!v.empty()){
        cout<<*v.begin()<<endl;
        v.erase(*v.begin());
    }
}

int main()
{   
    //ios::sync_with_stdio(false), cin.tie(0),cout.tie(0); 
    int t = 1; 
    //cin>>t;

    while (t --){
        sovle();
    }

    return 0;
}

|