XXXXXXXX不会太多吧?

XXXXXXXX不会太多吧?

有些统计类问题,看起来完全不可做!

但是经过一些观察,我们可以得出一些神妙的结论。

先来看两个比较奇怪的栗子。


栗子1:Make Symmetrical

(x^2+y^2=c)的解不会太多。

题意:

维护一个二维平面点集,支持插入删除查询操作。每次查询输入一个点((x,y)),求出,要让点集关于((0,0),(x,y))对称,需要补多少个点。

题解:

  • 首先如果(x^2+y^2)不是完全平方数,那这条直线很划水的。[想一想就能意识到了]
  • 然后,如果((x_1,y_1)),((x_2,y_2))关于直线对称,那么这两个点到原点距离相等哎。[垂径分弦]
  • 把距离原点相等的点扔到一个set里就好了

--

栗子2:Archery Tournament

题意:

!考虑好多好多圆两两相切的情况

打靶游戏,操作分为两种。

  • 操作1:添加一个靶子[给出圆心((x,y)),半径为(y)]。
  • 操作2:射击某个位置,如果射中了,靶子就没了。

保证,靶子不会相交。

很显然靶子不能相交这个条件会很有用。

做法:

作直线(x=k),截到的圆个数会很少。


稍微总结一下啊

1. 首先是几何级数!

众所周知,这东西增长飞快飞快的啊!

2017ECL D: Mr. Panda and Geometric Sequence

做法:

  • 等比数列至少有三项。我们设公比为(frac{p}{q}),那么(a_1\%q^2=0)
  • 然后,枚举首项,枚举公比。然后就没了。
  • 最后我们会发现合法的数字很少,预处理好所有合法数字,对于查询,二分即可。
  • 现场赛,被公比不为整数这点吓到了。但是仔细观察下,还是很明确的。
原文地址:https://www.cnblogs.com/RUSH-D-CAT/p/9569012.html