思路:
設怪物的屬性為 a,b
a,ba,
b,環境值為 x,y
x,yx,
y ,t=x
yt=\frac
t=yx
每個怪的貢獻為
a +b
+at+
b×
ta+b+\frac+b\times t
a+b+ta
+b×
t發現是乙個單峰函式
打表發現總貢獻也是單峰的,於是可以三分
開口向上的單峰函式的max也是單峰的**:
#include
using
namespace std;
namespace io
char buf_[
1<<21]
;int p1_ =-1
;inline
void
flush()
inline
voidpc(
char x)
inline
void
out(
int x)
if(x <0)
while
(x)for
(int i = pos; i; i--)pc
(k[i]);
return;}
inline
void
out(string x)
}// namespace io
using
namespace io;
const
int a =
1e6+5;
const
int inf =
1e9;
const
double eps =
1e-6
;inline
intcp
(double u,
double v)
int n;
struct node p[a]
;double maxx =
0, minn = inf;
double ans = inf;
inline
double
calc
(double t)
signed
main()
double l =
max(eps, minn - eps)
, r = maxx + eps;
for(
int i =
1; i <=
70; i++
)printf
("%0.4lf\n"
, ans)
;return0;
}
某 SCOI 模擬賽 T1 a DP
有 n nn 個單詞,每個單詞出現 c ic i ci 次,現用 與.給單詞編碼,要求任意乙個單詞的編碼不是另乙個的字首。設 的權值為 2,的權值為 1,最小化所有單詞的權值和。n 750 n leq 750 n 750。假設我們已經建好了所有單詞的字典樹,顯然出現次數越多的單詞應該掛在越淺的葉子 ...
20200717 SCOI模擬T1(計數)
description 毒瘤出題人給了你乙個由且僅由小寫字母構成的字串,並且多次詢問你一段區間的字元組成的字串中,noi 子串行出現的次數。輸入輸入資料從noi.in讀入 第一行兩個整數n,m表示字串的長度和詢問次數第二行乙個由小寫字母組成的字串s,下標從1開始標號然後一行乙個整數seed,含義請參...
20200610 SCOI模擬T1(網路流)
思路 矩陣a為乙個n m的矩陣 矩陣a的轉置 a ta t at即為乙個m n的矩陣,其中 ai,jt a j,ia t a ai,jt aj,i 有 a b c ata b a t c at a b c a t a b a t c a t a b c at a b at c at對於b中的乙個數 ...