POJ 1118 斜率,排序,找到最大的簡單方法

2021-07-11 22:16:31 字數 530 閱讀 6249

題意:給出n個點座標,求最多能有幾個點在一條直線上。

要點1:排序注意豎直線沒斜率。

要點3:每個數的初值要注意。

易犯的錯誤**:

#include#includeusing namespace std;

#includeint main()

sort(a,a+t);

int sum = 1;

for(j = 0;j < t; j++) //乙個簡便方法去找到最大在一條直線上的數}}

printf("%d\n",endnumber + 1);

}return 0;

}

正確**:

#include#includeusing namespace std;

int main()

sort(a,a+t);

int sum = 1;

for(j = 0;j < t; j++)}}

cout<

POJ1118 Lining Up 計算幾何

題意 給你乙個二維座標上的幾個點,問在同一條直線上最多幾個點。思路 n 700,剛開始我列舉兩個點i,j。兩個點一條線 然後用k列舉一遍各個點。這樣算出每條線上最多的點。用了o n 3 的超時了。我真是太天真了。其實在列舉每個k的時候就可以想到。k明顯有一些可以優化的地方。優化 之前是列舉每條線,現...

poj 1118 Lining Up 解題報告

題意 給出n個點的整數座標 n 700 求一條直線,使得在這條直線上的點數最多,輸出點數。思路 簡單幾何題。採用幾何中三個點是否在一條直線判定定理。include iostream include algorithm include cstdio using namespace std typede...

poj1180 dp斜率優化

解題報告題目 題目大意 給定n 個工作,可以任意分組,最後每個工作的花費是 o i f i 其中o i 是i 所在分組整體被完成的時間,給定開始時間,機器啟動時間 s,求完成所有任務最小花費。演算法 動態規劃 斜率優化 思路 首先想到了 dp i min,sumf i f i f i 1 然後化解這...