【問題描述】
平面上有n條直線,用方程aix + biy +ci =0表示。這些直線沒有三線共點的。現在要你計算出用這些直線可以構造出多少三角形?
輸入:第1行:乙個整數n(1 ≤ n≤ 300000)。
下面n行:每行3個整數:ai, bi 和ci,表示對應直線方程的係數。不超過10^9.
對於40%的資料,n ≤1000;
對於100%的資料,n≤300000。
分析:當3條直線兩兩不平行,並且不相交於一點時,這3條直線就能圍成乙個三角形.那麼任務就變成了選3條這樣的直線有多少種方案.乙個比較簡單的dp,具體可以看:傳送門
#include #include#include
#include
#include
using
namespace
std;
typedef
long
long
ll;ll n, cnt, f[
300010][4
];double k[300010], b[300010
];int
main()
sort(k + 1, k + 1 +n);
for (int i = 1; i <= n; i++)
f[0][0] = 1
;
for (int i = 1; i <= cnt; i++)
printf(
"%lld\n
", f[cnt][3
]);
return0;
}
校內模擬 三角形
題目鏈結 時限 100ms 空間 512mb 無有 n 個木棍,現在知道了每個木棍的長度,要從中挑出三個木棍組成乙個三角形,如何挑選木棍,使得組成的三角形的面積最大 由於出題人不會做 由於上面的要求過於毒瘤,良心的出題人將題面改為了求乙個方案使得三角形的周長最大 輸出這個三角形的三邊長和面積 輸入格...
求大三角形中三角形個數
一道筆試程式設計題要求求乙個大三角形中所有小三角形的個數,大約是下面這種情況 首先想到是的將問題由求邊長為n的三角形個數 求邊長為n 1的三角形個數 求邊長為1的三角形個數 1,回溯求得所有三角形個數。但是再仔細一看因為有重疊三角形和倒置的三角形,所以這個方法不可行。接著找到三角形個數由三部分組成 ...
經典演算法 (三)帕斯卡三角形(楊輝三角形)
楊輝三角,是二項式係數在三角形中的一種幾何排列。在歐洲,這個表叫做帕斯卡三角形。帕斯卡 1623 1662 是在1654年發現這一規律的,比楊輝要遲393年,比賈憲遲600年。簡介 楊輝三角,是二項式係數在三角形中的一種幾何排列。在歐洲,這個表叫做帕斯卡三角形。帕斯卡 1623 1662 是在165...