CSES – Apartments

貪心

#include<bits/stdc++.h>
#define int long long
#define double long double
#define f first
#define s second
#define fastio ios_base::sync_with_stdio(false);cin.tie(0)
using namespace std;
int n,m,k;
vector<int>a,b;
signed main(){
    fastio;
    cin>>n>>m>>k;
    for(int i=0;i<n;i++){
        int x; cin>>x;
        a.push_back(x);
    }
    for(int i=0;i<m;i++){
        int x; cin>>x;
        b.push_back(x);
    }
    sort(a.begin(),a.end());
    sort(b.begin(),b.end());
    int idx=0, cnt=0;
    for(int i=0;i<m;i++){
        while(idx<n && a[idx]<b[i]-k){
            idx++;
        }
        if(idx<n && a[idx]<=b[i]+k){
            cnt++;
            idx++;
        }
    }
    cout<<cnt<<"\n";
    return 0;
}

相關文章

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *