题目描述
胡蜂军团拥有强大的战斗力和执行力,它们每天都会排成整齐的矩形队形。归零者研发了一种病毒,这种病毒就以让胡蜂染病,从而控制胡蜂军团。被投放病毒的胡蜂每天都会感染前后左右的未患病的胡蜂,第二天染病的胡蜂又会继续把病毒染给他们身边的其他胡蜂,一直扩散到整个军团。
在胡蜂军团中,散落着一些胡蜂领袖,只有控制所有的胡蜂领袖,才能控制整个胡蜂军团。但归零者并没有办法直接让胡蜂领袖染病,他只好先让胡蜂军团中的某些胡蜂患病,再让它们慢慢感染每个胡蜂领袖。请你编程计算出每只胡蜂领袖的患病时间。
输入
第1行:四个整数n,m,a,b,(1<=n,m<=500, 1<=a,b<=100)表示军团矩阵有n行m列。有a个感染源,b为胡蜂领袖的数量。
接下来a行:每行有两个整数x,y(1<=x<=n,1<=y<=m),表示感染源在第x行第y列。
接下来b行:每行有两个整数x,y(1<=x<=n,1<=y<=m),表示胡蜂领袖在第x行第y列。
输出
第1至b行:每行一个整数,表示这个胡蜂领袖感染病毒的时间,输出顺序与输入顺序一致。如果某只胡蜂的位置在感染源,那么它感染瘟疫的时间为0。
样例输入
5 4 2 3
1 1
5 4
3 3
5 3
2 4
样例输出
3
1
3