第一课 223. 矩形面积
教学方法:
1、利用 Leetcode 学习 java 基础数据结构;
2、对比 python 进行 java 教学;
3、对理解不深的内容,先强行记忆,由点到面。
课前准备
1、注册 CSND 和 Leetcode 账号;
2、没有电脑的同学准备两个手机,一个用于听讲,一个用于同步操作。
要求
1、必须记住相关的英语单词,掌握用法;
2、有一定的数学基础;
3、需要较好的理解和记忆能力;
4、要有较好的耐力,不要一有难度就放弃!只要坚持一定有很大的收获。
第一课 223. 矩形面积
Leetcode
知识点: class, public, static, return, Math.max(), Math.min()
class Solution:
def computeArea(self, ax1: int, ay1: int, ax2: int, ay2: int, bx1: int, by1: int, bx2: int, by2: int) -> int:
a = (ax1 - ax2) * (ay1 - ay2)
b = (bx2 - bx1) * (by2 - by1)
w = min(ax2, bx2) - max(ax1, bx1)
h = min(ay2, by2) - max(ay1, by1)
c = max(w, 0) * max(h, 0)
return a + b - c
class Solution {
public int computeArea(int ax1, int ay1, int ax2, int ay2, int bx1, int by1, int bx2, int by2) {
int a = (ax2 - ax1) * (ay2 - ay1), b = (bx2 - bx1) * (by2 - by1);
int width = Math.min(ax2, bx2) - Math.max(ax1, bx1), height = Math.min(ay2, by2) - Math.max(ay1, by1);
int overlap = Math.max(width, 0) * Math.max(height, 0);
return a + b - overlap;
}
}