山東省第一節省賽 C (計算幾何 dp)

2021-07-01 22:10:12 字數 550 閱讀 1974

主要說一下狀態表示。

這裡的狀態是以d(i,j)代表以i開始,以j結尾的向量往下走還需要至少刪幾個點,那麼最終答案就是對每個狀態求一下最優值。

計算幾何部分應該用叉積和點積來考慮。可以發現順時針和逆時針成立的條件正好相反。

#include #include #include using namespace std;

const int inf = 10000;

const int n = 310;

struct point

}a[n];

int cross(point a,point b)

int dot(point a,point b)

int judge(int i,int j,int k)

else if(cro>0) return 1;

return 0;

}int d[n][n];

int n;

void init(){}

int dp()

return 0;

}

2019山東省賽C題(c )

原題 題目大意 乙個點 x,y 在座標軸上按如下規則移動 預設最初點為 0,0 輸入 第一行是整數t,有t組樣例 每組樣例中,第一行是整數n m,代表有n個操作,m次執行這n個操作,第二行是字串,是要執行的操作 輸出 對每組樣例,在一行中輸出 x y 的最大值 思路 對一組樣例來說,每次執行的n個操...

山東省第七屆ACM省賽C題 Proxy

proxy 比賽前期讀題不順,不知道是最小生成樹還是最短路徑,好吧,其實我們最開始想的連最短路徑都不是 到了後期終於知道了題意。就是給你乙個圖,讓你求0節點到n 1節點的最短路徑,但不是讓你輸出最小權值,而是輸出在這個路徑上的最接近源點的那個節點。如果0到n 1的最短路上中間沒有其他節點了就輸出0,...

c ,第一節課

上課老師寫的,我瞎跟著一起抄的 include include void swap int a,int b 用了指標的方法 void swap1 int a,int b 引用的方法 宣告乙個變數,其中內容是自己定義的 struct person int main int argc,const cha...