题目描述
随着信息和通信技术的快速发展,如今许多城市都建立了共享单车系统。该系统的核心功能之一是为潜在用户提供附近单车的信息。
假设有 m 辆单车和 n 名用户,每辆单车 j 位于坐标 (cj,dj),j=1,2,…,m;每名用户 i 位于坐标 (ai,bi),i=1,2,…,n。两个坐标 (x1,y1) 和 (x2,y2) 之间的距离按 (x1−x2)2+(y1−y2)2 计算。对于每名用户 i=1,2,…,n,你会得到一个阈值 si,任务是返回与用户 i 距离在 si 范围内的单车总数。
输入格式
输入可能包含多组测试数据。每组测试数据由四行组成。每组数据的第一行包含两个整数 m 和 n(0<m,n≤1000)。第二行按顺序包含单车 1,2,…,m 的坐标 (c1,d1),(c2,d2),…,(cm,dm),坐标之间以空格分隔。第三行按顺序包含用户 1,2,…,n 的坐标 (a1,b1),(a2,b2),…,(an,bn),坐标之间以空格分隔。第四行包含 n 名用户的阈值 s1,s2,…,sn。最后一组测试数据之后跟着一行两个 0。输入中的所有坐标数值均在 [−100000,100000] 范围内。
输出格式
对于每组测试数据,输出一行 n 个整数 k1,k2,…,kn,其中每个 ki 表示与用户 i 距离在 si 范围内的单车总数,i=1,2,…,n。
4 2
(0,0) (0,1) (1,0) (1,1)
(0,0) (1,1)
1 1
0 0
3 3
提示
翻译由 DeepSeek V4 Pro 完成