Submission #1869545


Source Code Expand

#include <iostream>
#include <algorithm>
#include<cmath>
#include<cstring>
#include<cstdio>
#include<cstdlib>
#include<vector>
#include<iomanip>
#include<set>
#include<map>
#define sqr(x) (x)*(x)
using namespace std;
long long n,m,a,b,i,j,dax[100005],day[100005],used[100005],ans,x,y,dis;
map<int,set<pair<int,int>/**/>/**/> row,col;
vector<int> lsx,lsy;
void dfs(int x)
{
	if (used[x]) return;
	used[x]=1;
	int i;
	vector<pair<int,int>/**/> era;
	set<pair<int,int>/**/>::iterator lb=row[dax[x]-dis].lower_bound(make_pair(day[x]-dis,0));
	set<pair<int,int>/**/>::iterator ub=row[dax[x]-dis].upper_bound(make_pair(day[x]+dis,1e18));
	for (set<pair<int,int>/**/>::iterator it=lb;it!=ub;it++)
	//col[(*it).first].erase(make_pair(dax[x]-dis,(*it).second)),row.erase(it++))
	{
		ans++;
		dfs((*it).second);
	}
	lb=row[dax[x]+dis].lower_bound(make_pair(day[x]-dis,0));
	ub=row[dax[x]+dis].upper_bound(make_pair(day[x]+dis,1e18));
	for (set<pair<int,int>/**/>::iterator it=lb;it!=ub;it++)
	//col[(*it).first].erase(make_pair(dax[x]-dis,(*it).second)),row.erase(it++))
	{
		ans++;
		dfs((*it).second);
	}
	lb=col[day[x]-dis].lower_bound(make_pair(day[x]-dis,0));
	ub=col[day[x]-dis].upper_bound(make_pair(day[x]+dis,1e18));
	for (set<pair<int,int>/**/>::iterator it=lb;it!=ub;it++)
	//row[(*it).first].erase(make_pair(day[x]-dis,(*it).second)),col.erase(it++))
	{
		ans++;
		dfs((*it).second);
	}
	lb=col[day[x]+dis].lower_bound(make_pair(day[x]-dis,0));
	ub=col[day[x]+dis].upper_bound(make_pair(day[x]+dis,1e18));
	for (set<pair<int,int>/**/>::iterator it=lb;it!=ub;it++)
	//row[(*it).first].erase(make_pair(day[x]-dis,(*it).second)),col.erase(it++))
	{
		ans++;
		dfs((*it).second);
	}
}
int main()
{
	cin>>n>>a>>b;
	for (i=1;i<=n;i++)
	{
		cin>>x>>y;
		dax[i]=x+y;
		day[i]=x-y;
		row[x+y].insert(make_pair(x-y,i));
		col[x-y].insert(make_pair(x+y,i));
		//lsx.push_back(dax[i]);
		//lsy.push_back(day[i]);
	}
	/*sort(lsx.begin(),lsx.end());
	unique(lsx.begin(),lsx.end());
	sort(lsy.begin(),lsy.end());
	unique(lsy.begin(),lsy.end());
	for (i=1;i<=n;i++)
	{
		dax[i]=upper_bound(lsx.begin(),lsx.end(),dax[i])-lsx.begin()+2;
		day[i]=upper_bound(lsy.begin(),lsy.end(),day[i])-lsy.begin()+2;
	}*/
	dis=max(abs(dax[a]-dax[b]),abs(day[a]-day[b]));
	dfs(a);
	dfs(b);
	cout<<ans;
	return 0;
}

Submission Info

Submission Time
Task E - Manhattan Compass
User csy2005
Language C++14 (GCC 5.4.1)
Score 0
Code Size 2364 Byte
Status WA
Exec Time 3157 ms
Memory 27392 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 900
Status
WA × 3
AC × 3
WA × 15
TLE × 10
Set Name Test Cases
Sample subtask0_0.txt, subtask0_1.txt, subtask0_2.txt
All subtask0_0.txt, subtask0_1.txt, subtask0_2.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_2.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
Case Name Status Exec Time Memory
subtask0_0.txt WA 1 ms 256 KB
subtask0_1.txt WA 1 ms 256 KB
subtask0_2.txt WA 1 ms 256 KB
subtask1_0.txt TLE 3157 ms 22528 KB
subtask1_1.txt TLE 3157 ms 22400 KB
subtask1_10.txt WA 141 ms 20864 KB
subtask1_11.txt WA 105 ms 11520 KB
subtask1_12.txt AC 159 ms 20352 KB
subtask1_13.txt AC 149 ms 20480 KB
subtask1_14.txt WA 171 ms 26880 KB
subtask1_15.txt WA 104 ms 11520 KB
subtask1_16.txt TLE 3157 ms 22912 KB
subtask1_17.txt TLE 3157 ms 22784 KB
subtask1_18.txt WA 224 ms 18816 KB
subtask1_19.txt WA 104 ms 11392 KB
subtask1_2.txt WA 173 ms 27392 KB
subtask1_20.txt TLE 3157 ms 22912 KB
subtask1_21.txt TLE 3157 ms 22784 KB
subtask1_22.txt WA 208 ms 18944 KB
subtask1_23.txt WA 188 ms 17664 KB
subtask1_24.txt TLE 3157 ms 22784 KB
subtask1_3.txt WA 138 ms 13696 KB
subtask1_4.txt TLE 3157 ms 22784 KB
subtask1_5.txt TLE 3157 ms 24064 KB
subtask1_6.txt WA 215 ms 18048 KB
subtask1_7.txt WA 146 ms 15360 KB
subtask1_8.txt AC 151 ms 20096 KB
subtask1_9.txt TLE 3157 ms 22528 KB