Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define ll long long
- #define _test int _TEST; cin>>_TEST; while(_TEST--)
- #define pb push_back
- #define ff first
- #define ss second
- int main()
- {
- _test
- {
- int n, k, a, b;
- cin>>n>>k>>a>>b;
- vector<pair<int, int>> vp(n);
- for(auto &[a, b]: vp)
- cin>>a>>b;
- a--, b--;
- ll int ans = fabs(vp[a].ff - vp[b].ff) + fabs(vp[a].ss - vp[b].ss);
- vector<ll int> cst(k);
- ll int mmin = 1e18;
- for(int i=0; i<k; i++)
- {
- cst[i] = fabs(vp[a].ff - vp[i].ff) + fabs(vp[a].ss - vp[i].ss);
- mmin = min(mmin, (ll)(fabs(vp[i].ff - vp[b].ff) + fabs(vp[i].ss - vp[b].ss)));
- }
- if(cst.size() > 0) ans = min(ans, *min_element(cst.begin(), cst.end()) + mmin);
- cout<<ans<<"\n";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment