平面有n個矩形,第乙個矩形左下標為(x1[1],y1[1]),右上標為(x2[1],y2[1]).
如果有2個或多個矩形有公共區域則認為他們相互重疊
計算平面內重疊矩形數量最多的地方有幾個矩形相互重疊
輸入第一行n(2<=n<=50),表示矩形的個數
第二行n個整數x1[i] (-10^9<=x1[i]<=10^9),表示左下角的橫座標
第三行 n個整數y1[i] (-10^9<=y1[i]<=10^9),表示左下角的縱座標
第四行n個整數x2[i] (-10^9<=x1[i]<=10^9),表示右上角的橫座標
第五行 n個整數y2[i] (-10^9<=y1[i]<=10^9),表示右上角的縱座標
輸出輸出乙個正整數, 表示最多的地方有幾個矩形相互重疊,如果都不重疊輸出1;
測試資料:
20 90
0 90
100 200
100 200
#include #include#include
#include
#include
#include
using
namespace
std;
struct
node
;node c;
int fan(node a,node b) //
判斷a,b兩個矩形是否相交,矩形c是相交矩陣
else
return0;
}int
main()
for(int i=1; i<=n; i++)
for(int i=1; i<=n; i++)
for(int i=1; i<=n; i++)
//最長遞增子串行的模版
node dp[55
];
int pre[55
];//
memset(dp,0,sizeof(dp));
memset(pre,0,sizeof
(pre));
int maxs=1
;
int k=0
;
for(int i=1; i<=n; i++)
}if(dp[i].t>maxs)
}if(k==0
) cout
<<"1"
;
else
cout
}return0;
}
線段 矩形 矩形與矩形 相交
csharp view plain copy print?功能 判斷線段和矩形是否相交 先判斷線段的倆個端點是否在矩形的內部,在就必然相交 其次判斷線段的包圍盒是否和矩形相交,不相交的話線段和矩形肯定也不相交 最後判斷,矩形的四個頂點是否位於線段的兩側,是則必然相交,否則就不相交 csharp vi...
演算法5 8 矩形相交
在70年代,計算機已經發展了一段時間,晶元的規模也越來越複雜。因此人們不得不發明一些晶元設計的軟體。在軟體中完畢晶元的設計 除錯工作。當時。模擬執行的時候依據電路的設計,模擬的過程中須要不斷地推斷矩陣是否相交。那時候還沒有非常好的演算法。人們僅僅能通過暴力手段逐個推斷矩陣是否相交。在今天看來,這樣的...
判斷矩形相交以及求出相交區域
問題 給定兩個矩形a和b,矩形a的左上角座標為 xa1,ya1 右下角座標為 xa2,ya2 矩形b的左上角座標為 xb1,yb1 右下角座標為 xb2,yb2 1 設計乙個演算法,確定兩個矩形是否相交 即有重疊區域 2 如果兩個矩形相交,設計乙個演算法,求出相交的區域矩形 1 對於這個問題,一般的...