JZOJ 3441 小喵喵的新家

2021-07-14 12:29:07 字數 1195 閱讀 2025

小喵喵和小聰聰從小就是好朋友 ,他們經常在一起玩耍 。如今小喵已經厭倦了自己居住的環境,想請小聰聰為她建乙個新家。

小喵喵天生多才多藝,對多種樂器頗有研究。對於生活中常見的圖形,她對圓形很感興趣,因此小聰聰決定為她建乙個圓形的新家。

我們設新家在乙個平面直角座標系上,其中新家的圓心為平面直角座標系的原點。

小聰聰有一把神奇的剪刀,他定義了乙個值m,以等分 [−pi,pi]弧度 (詳見樣例)。他還有一支神奇的畫筆,將進行 n次「鋪地毯」操作。對於第i 次「鋪地毯」操作,他將設定乙個半徑ri,起始位置si,終止位置ti ,然後從圓心角pi*si/m到圓心角pi*ti/m這部分區域逆時針鋪上乙個扇形地毯。

小喵喵想到了乙個奇怪的問題,她想知道有多大面積被至少鋪過k次地毯。 這個問題一下就難倒了聰明的小聰聰。 現在小聰聰求助於你,你能幫他解決這個問題嗎?為了方便表達 ,設答案的值為t,你只需要輸出 t×2m/pi的值即可 。

第一行是三個整數 n,m,k,含義 如題目描述中所述。

接下來n行, 每行描述一次鋪地毯操作 。第i行有三個整數r,si,ti,含義 如 題目描述中所述。

輸出 乙個整數 表示t×2m/pi的值。

我們可以知道每乙個扇形的面積為ti

−si2

m∗πr

i2,那麼*2m/pi後,就剩下了(t

i−si

)∗r2

.最簡單的方法是一塊塊算面積,那麼那一塊的面積(合法的)為第k大的半徑的平方(想一想為什麼)。

那麼如何實現呢?我們打一棵線段樹,維護有幾個扇形覆蓋到了這塊地方。如果我們要求第k大的數,那麼我們要做一次搜尋,初始值為k。

如果r>=k,則往右走,否則往左走,往左走的時候k-=r。走到最底的就是第k大的數的下標。

注意:如果si>ti,那麼乙個扇形將要變成兩個扇形。從m/-m這條線這裡割開。

——2016.7.6

JZOJ4823 小W學物理

為了測試小w的物理水平,mr.x在二維座標系中放了n面鏡子 鏡子座標絕對值不超過m 鏡子均與座標軸成45 角,所以一共有兩種型別 和 原點不會有鏡子,任意一點最多只有一面鏡子。鏡子兩個面都能反光,而中間不透光,例如,對於乙個 型鏡子,下方向射入的光線會被反射到右方向,左方向射入的光線會被反射到上方向...

JZOJ 4823 小W學物理

為了測試小w的物理水平,mr.x在二維座標系中放了n面鏡子 鏡子座標絕對值不超過m 鏡子均與座標軸成45 角,所以一共有兩種型別 和 原點不會有鏡子,任意一點最多只有一面鏡子。鏡子兩個面都能反光,而中間不透光,例如,對於乙個 型鏡子,下方向射入的光線會被反射到右方向,左方向射入的光線會被反射到上方向...

JZOJ4823 小W學物理

給定乙個二維平面,平面上有 n 個鏡子,每個鏡子都成45 角擺放。現從 0,0 沿x軸正方向射出一道光線,求經過 t 路程後,終點的座標。data constraint n 100000,t 1018 先排個序,然後預處理出每個鏡子四個方向上的第乙個鏡子是哪個點。然後在模擬地做一遍即可。需要注意,有...