c++ 黑与白问题
【问题描述】Rikka喜欢白色,她不喜欢黑色。
从Rikka家的后窗口望出去可以看到一片非常大的广场。平时,这个广场上停满了白色的鸽子,十分美丽。
可是有一天,Rikka发现广场上突然出现了一些黑色的鸽子,她觉得这些黑色的鸽子与白色格格不入,她十分讨厌这些黑色的鸽子。
根据初中数学的知识,Rikka把这个广场看成了一个二维坐标平面,她惊奇地发现黑色鸽子只会出现在坐标为整数的位置。
Rikka经过仔细观察,发现黑色鸽子的数量和位置并不是固定的,可能会有黑色鸽子飞来飞去,而且同一个时间最多只会有只黑色鸽子发生移动。
她还发现,同一个坐标可能会出现多只黑色鸽子。
她想要知道站在一个坐标(x,y)向四周看,广场上所有的黑色鸽子所在的坐标到(x.y)的距离的平方和。
定义两点之间的距离为欧几里得距离,即(x1,y1)和(x2,y2)之间的距离计算公式为(根号→)√(x1-x2)^2+(y1-y2)^2 。
【输入格式】
输入包括n+m+1行。
第一行为2个整数n,m,分别表示一开始黑色鸽子的数量和接下来发生的事件数。
接下来有行,每行两个整数x,y表示一开始存在的黑色鸽子所在的坐标。
接下来有n行,每行形如o,x,y,分别表示每一个事件:
1、当时o=1,表示在坐标为(x,y)的地方飞来了一只黑色鸽子。
2、当时o=2,表示在坐标为(x,y)的地方飞走了一只黑色鸽子。
3、当时o=3,表示Rikka站在(x,y),请告诉她站在这个点到广场上现在所有的黑色鸽子的坐标的距离的平方和。
【输出格式】
输出包括若干行。
对于每一个o=3的事件,输出一行一个整数表示题目中所求的答案。
由于Rikka的数学实在是不好,她无法计算很大的数字,你只要告诉她这个答案对1004535809取模后的值。
【样例输入】
5 5
9 3
7 1
1 6
1 5
1 5
1 1 1
3 1 3
3 1 5
2 9 3
3 3 1
【样例输出】
125
137
89
求解,如何把时间压缩下来
[此贴子已经被作者于2021-3-28 15:55编辑过]