| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1306723 | KhoaDuy | Pairs (IOI07_pairs) | C++20 | 26 ms | 1740 KiB |
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define ll long long
struct fenwick{
vector<int> bit;
void build(int n){
bit.assign(n+1,0);
}
void update(int i,int x){
for(;i<bit.size();i+=(i&(-i))){
bit[i]+=x;
}
}
int query(int i){
int curr=0;
for(;i;i-=(i&(-i))){
curr+=bit[i];
}
return curr;
}
int range(int l,int r){
l=max(l,1);
r=min(r,(int)bit.size()-1);
if(l>r){
return 0;
}
return (query(r)-query(l-1));
}
};
signed main(){
if(fopen("input.txt","r")){
freopen("input.txt","r",stdin);
}
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int b,n,d,m;
cin >> b >> n >> d >> m;
if(b==1){
vector<int> v(n);
for(int i=0;i<n;i++){
cin >> v[i];
}
sort(v.begin(),v.end());
int ptr=-1;
ll ans=0;
for(int i=0;i<n;i++){
while(ptr+1<i&&v[i]-v[ptr+1]>d){
ptr++;
}
ans+=(i-1-ptr);
}
cout << ans << endl;
return 0;
}
if(b==2){
vector<pair<int,int>> v(n);
for(int i=0;i<n;i++){
cin >> v[i].first >> v[i].second;
v[i]={v[i].first-v[i].second,v[i].first+v[i].second};
}
fenwick bit;
bit.build(2*m);
sort(v.begin(),v.end());
int ptr=-1;
ll ans=0;
for(int i=0;i<n;i++){
while(ptr+1<n&&v[i].first-v[ptr+1].first>d){
ptr++;
bit.update(v[ptr].second,-1);
}
ans+=bit.range(v[i].second-d,v[i].second+d);
bit.update(v[i].second,1);
}
cout << ans << endl;
return 0;
}
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
