问题描述
小S正在研究坐标系中的几何图形,特别是菱形。现在给定一个X轴和Y轴的范围,他希望统计在坐标系内满足以下三个条件的菱形的总数:
- 菱形具有正面积。
- 菱形的每个顶点的横坐标xi和纵坐标yi都是整数,且满足0≤xi≤X0≤xi≤X 和 0≤yi≤Y0≤yi≤Y。
- 菱形的对角线平行于坐标轴。
你需要帮助小S计算出满足这些条件的菱形的总数。
测试样例
样例1:
输入:
x = 2 ,y = 2
输出:1
样例2:
输入:
x = 3 ,y = 3
输出:4
样例3:
输入:
x = 4 ,y = 2
输出:4
根据题目的条件 “菱形的对角线平行于坐标轴而且每个顶点的横坐标xi和纵坐标yi都是整数” 这段话,完美可以确定和y周平行的对角线的x轴的坐标(两个的横坐标是相等的)的所有取值和y轴上所有纵坐标的取值,分别用xr和yr记录。然后将他们相乘就是结果了
public class Main {
public static int solution(int x, int y) {
int xr=0,yr=0,i;
for( i=2;i<=x;i+=2){
xr+=x-i+1;
}
for(i=2;i<=y;i+=2){
yr+=y-i+1;
}
return xr*yr;
}
public static void main(String[] args) {
System.out.println(solution(2, 2) == 1);
System.out.println(solution(3, 3) == 4);
System.out.println(solution(4, 2) == 4);
}
}