1. 程式人生 > >XXXXXXXX不會太多吧?

XXXXXXXX不會太多吧?

europe 查詢 刪除 mat 題解 但是 xxx set make

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\),截到的圓個數會很少。

XXXXXXXX不會太多吧?