設球缺的高為h,由於題目中說明d>max(r1,r2)且d<(r1+r2)
,所以兩個球「鑲嵌」而損失的體積不會超過球體的1/
2 , 因此直接積分可以得出球的體積公式。
正視球缺,設由於「鑲嵌」損失的劣弧所對的圓心角為
θ ,考慮球表面積的積分方法,對
θ 取值限定範圍易得s=
2πrh
。注意本題的
π 的新的定義。
可以證明,對於乙個合法的點,必為這一行或這一列的最大值,否則需要改變一行或一列的值來達到這一值。
直接模擬即可,可以把所有有雷的位置變成1,其他為0,o(
n2) 掃瞄時對每個為0的點輸出其周圍8個人的和即可。
經典貪心。
考慮可以加速的部分是優先讓快的更快還是慢的變快,顯然v0
→v的轉變不如∞→
v 對結果的貢獻大,因此得到貪心策略是優先讓最慢的變快,注意討論不能使完整的一段路加速的情況。
倒著貪心,按截止日期從大到小排序,對每個日期選擇分值最大的。
貪心,因為後面數被分成幾段並不會影響前面的數,故從後往前掃,給出兩個結論 :
1. 每次從後往前掃遇到的第乙個負數一定是某個段的末尾。如果這個負數是某一段中間值,由於其後面都是非負的,而且後面的數影響不到前面的字首和,那麼將後面的非負值單獨拿出來作為乙個段顯然更優;
2. 每次從後往前掃遇見第乙個負數之後,不妨令這個負數下標為i,往前找離i最近的j使得a[j]+…+a[i]>=0,從j到i作為一段顯然是合法的,且是最優的,因為如果選擇乙個小於j的k,使得k到i作為合法的一段,顯然不如分割成k到j-1作為一段,j到i作為一段(由k到i合法和j到i合法輕易知道k到j-1和j到i也是合法的)。 所以做法就是從後往前掃,遇見非負數直接將其看作一段,遇見負數就往前找並且累加和,只要累加值非負就當做一段。
直接用字串模擬即可,注意特殊情況
字元編碼,每次讀字元並利用位運算判斷這個字究竟是幾個字元組成的,之後讀入剩下的字元並且用16進製表達。資料比較水最多只有3個字元的情況。
高精度計數。首先將求區間[l
,r] 數量轉換為求[0
,r] 和[0
,l] 的數量後二者做差。
其次簡單推導可知,乙個數n=
anan
−1⋯a
1a0 (ai
表示這個數的第
i 位),則[0
,n]的數字中包含9的個數為∑n
i=1a
i∗10i
−ai∗
9i,原理即算出所有數字種數減去不含9的,這個公式可以適用於所有不含某一特定數字的數量。
最後是一些細節問題,比如本題需要用壓縮進制法節約空間,由於乙個int最多可以完整表示8位數字的範圍,所以我們採用8位壓縮,即乙個int表示大數的8位,這樣可以節省不少的空間,而且每兩個int之間的運算可以直接進行,記錄進製即可。
由於至少有乙個寬條,所以認為最大的乙個是寬條,確定乙個區間,之後對每乙個條都按他是寬的計算區間求交,窄的轉換成寬的計算,如果發現有兩個交集為空說明非法,否則有解。
對x,y座標分別排序後找中位數。
結構體排序裸題。
注意就是並列的情況,兩個人並列第一之後接下來的人是第三。
看似博弈,其實是dp,因為題面已經給出了最佳策略,按最佳策略模擬即可。首先對所有數排序,以dp[i]表示剩下前i個數時,先取數的人能夠達到的分數差最大值,那麼有
dp[0]=0
dp[1]=a[1]-dp[0]=a[1]
dp[2]=max(a[2]-dp[1],a[1]-dp[0])=max(a[2]-dp[1],a[1])=max(a[2]-dp[1],dp[1])
dp[3]=max(a[3]-dp[2],a[2]-dp[1],a[1]-dp[0])=max(a[3]-dp[2],dp[2])
……
dp[n]=max(a[n]-dp[n-1],dp[n-1])
o(n)遞推即可
首先判斷合法性。
讀入之後轉換字母對映,去掉連字元,之後看總位數是否為7位,以及第一位是否為3或6。
其次判重。
因為記憶體空間不足所以依然要進製壓縮,這裡用二進位制表示乙個狀態的存在或不存在,運用乙個簡單的道理:商乘除數加餘數,我們可以把乙個數分解成他除以某個數的商以及餘數,餘數又可以用二進位制位來記錄。乙個int恰好32位,所以模32。
新開陣列記錄重複的部分,每次線性查詢就行,題目說了這個不多,所以不需要優化。
BITCS2016程式設計 1 球體問題
題外話 n久沒更博 最近假期綜合症,加上任務緊,真的不想幹活啊!所以,我就來更博了哈哈哈 壞笑 因為是第一篇,所以簡單說一下bitcs2016程式設計前標的含義吧,時隔自己修這門課已經過去整整四年了,當時修完第一次就一直想重修,但是沒有鼓起勇氣完全跟下來課程過,這段時間自己自由安排時間,所以還是勉強...
JLOI2016 SHOI2016 偵察守衛
嘟嘟嘟 這道題可以說是 hnoi2003 消防局的設立的公升級版。距離從2改為了d。辛虧d只有20,這也就是乙個切入點。令f u j 表示u四周 j 1的距離需要被覆蓋,g u j 表示u可以像四周覆蓋 j 的距離。考慮轉移方程,令v為u的其中乙個兒子 1.f u j 直接從v延伸而來 f u j ...
ACM2016湖南省賽2016
time limit 5 sec memory limit 128 mb submit 339 solved 206 submit status web board 給出正整數 n 和 m,統計滿足以下條件的正整數對 a,b 的數量 1.1 a n,1 b m 2.a b 是 2016 的倍數。輸入...