This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define forf(i,a,b) for(int i = a; i<=b; i++)
#define all(v) v.begin(),v.end()
#define fi first
#define se second
using namespace std;
typedef long long ll;
int N,K;
ll X[1000001],Y[1000001];
pair<ll,ll> Xind[1000001] , Yind[100001];
set<pair<ll,ll> > S;
ll inf = 1e18;
ll ab(ll x){ return x<0?-x:x;}
vector<ll> All;
void naive(){
forf(i,1,N){
forf(j,i+1,N){
All.push_back(max(ab(X[i]-X[j]),ab(Y[i]-Y[j])));
}
}
sort(all(All));
forf(i,0,K-1) printf("%lld\n" , All[i]);
}
int main(){
scanf("%d %d" , &N,&K);
forf(i,1,N) scanf("%lld %lld" , &X[i] , &Y[i]);
forf(i,1,N){
ll x = X[i], y = Y[i];
X[i] = x+y;
Y[i] = x-y;
Xind[i] = {X[i],i};
Yind[i] = {Y[i],i};
}
sort(Xind+1,Xind+N+1); sort(Yind+1,Yind+N+1);
naive();
}
Compilation message (stderr)
road_construction.cpp: In function 'int main()':
road_construction.cpp:26:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
26 | scanf("%d %d" , &N,&K);
| ~~~~~^~~~~~~~~~~~~~~~~
road_construction.cpp:27:22: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
27 | forf(i,1,N) scanf("%lld %lld" , &X[i] , &Y[i]);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 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... |