java:蓝桥杯,矩形面积交
生活随笔
收集整理的這篇文章主要介紹了
java:蓝桥杯,矩形面积交
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
平面上有兩個(gè)矩形,它們的邊平行于直角坐標(biāo)系的X軸或Y軸。對(duì)于每個(gè)矩形,我們給出它的一對(duì)相對(duì)頂點(diǎn)的坐標(biāo),請(qǐng)你編程算出兩個(gè)矩形的交的面積。
輸入
輸入僅包含兩行,每行描述一個(gè)矩形。
在每行中,給出矩形的一對(duì)相對(duì)頂點(diǎn)的坐標(biāo),每個(gè)點(diǎn)的坐標(biāo)都用兩個(gè)絕對(duì)值不超過10^7的實(shí)數(shù)表示。
輸出
輸出僅包含一個(gè)實(shí)數(shù),為交的面積,保留到小數(shù)后兩位。
樣例輸入1 復(fù)制
1 1 3 3
2 2 4 4
樣例輸出1
1.00
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);// 鍵入四個(gè)坐標(biāo)double[] x = new double[4];double[] y = new double[4];double[] d = new double[4];double skr = 0;for (int i = 0; i < y.length; i++) {x[i] = sc.nextDouble();y[i] = sc.nextDouble();}// 找到第一個(gè)坐標(biāo);畫圖比較x坐標(biāo)的大小,第二大和第三大的x坐標(biāo)為所求矩陣坐標(biāo)d[0] = Math.min(Math.max(x[0], x[1]), Math.max(x[2], x[3]));//右下角x坐標(biāo)d[1] = Math.max(Math.min(y[0], y[1]), Math.min(y[2], y[3]));// 右下角y坐標(biāo)d[2] = Math.max(Math.min(x[0], x[1]), Math.min(x[2], x[3]));// 左上角x坐標(biāo)d[3] = Math.min(Math.max(y[0], y[1]), Math.max(y[2], y[3]));// 左下角y坐標(biāo)// d[0]>d[2]||d[3]>d[1]if (d[0] - d[2] > 0 && d[3] - d[1] > 0) {System.out.printf("%.2f", (d[0] - d[2]) * (d[3] - d[1]));} else {System.out.printf("%.2f", skr);}} }總結(jié)
以上是生活随笔為你收集整理的java:蓝桥杯,矩形面积交的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java:蓝桥杯 矩阵乘法
- 下一篇: java:大数运算 高精度乘法