BJ模擬 帳篷 凸包

2021-08-19 14:19:15 字數 1236 閱讀 2161

題目描述:

解題思路:

當n,m很小時,直接暴力列舉起點,用三角剖分的方式,狀態記錄當前點和上乙個點dp,複雜度為o(

n4) o(n

4)當n,m較大時,h已經遠超1e9z,直接求周長最小凸包即可,注意周長最小時自動滿足凸性,所以可以只列舉起點,狀態記錄當前點dp即可,也可以用floyed求最小環的方式dp,時間複雜度皆為o(

n3) o(n

3)

#include

using

namespace

std;

int getint()

const

int n=1005;

const

double inf=1e50;

struct point

point(double _x,double _y):x(_x),y(_y){}

inline

friend point operator - (const point &a,const point &b)

inline

friend

double

operator * (const point &a,const point &b)

inline

double dis()

}a[n],b[n],p[n];

int n,m;

bool ok[n][n];

double f[n][n],g[n][n],fib[n],h;

inline

bool cmp(const point &a,const point &b)

double cs(int i,int j)

double calc(int o)

void solve1()

void solve2()

for(int k=1;k<=n;k++)

if(ans==inf)puts("no solution");

else

printf("%0.3f\n",ans/2);

}int main()

if(n+m<=60)solve1();

else solve2();

}return

0;}

校內模擬 帳篷(凸包DP)

簡要題意 有一些要被圍起來的點,有一些木樁,請你以這些木樁為頂點構造乙個凸多邊形,使得要求的點全部在其內部,同時在原點處有乙個最高點,請你最小化以你選擇的凸多邊形為底面的椎體的側面積。凸包dp sb題一道。考場上沒看到凸多邊形的限制去想凹的情況了。include define ll long lon...

BJ模擬 期望(容斥)

題意 有n nn個變數x1n x n x1n 每個變數取值在 0,1 0,1 0,1 之間隨機,設s i 1 nxi s lfloor sum nx i rfloor s i 1n x i 求s ms m sm的期望 mo d998244353 pmod mod99 8244 353 題解 不妨設 ...

BJ模擬 String(SAM LCT 主席樹)

傳送門 題意 給字串 s s 支援 1.末尾加入字元。2.查詢 l r role presentation l,r l r 中出現兩次的最長字串。題解 好題。考慮離線做法 動態插入後面的字元,更新前面 l l 的答案。當我們插入乙個字元 r role presentation r r的時候,與前面的...