先放一份代码:
XY_T = input().split(" ") #输入第一行
下面这样做只是为了让萌新好理解:
X = int(XY_T[0]) #横向坐标
Y = int(XY_T[1]) #纵向坐标
XY = []
创建农田:
for i in range(Y):
XY.append([])先从纵向坐标开始
for j in range(X):
XY[i].append("N")然后横向坐标
如果 X X X == Y Y Y == 2 2 2
那么,他会生成一个这样的数组:
[["N","N"],["N","N"]]
为了好看我们可以这样:
[["N","N"]
["N","N"]]
是不是比上面的更像一个正方形?
这就是二维数组,当然n(n > 0)维的都有。
比如一个三维的:
[[["N","N"],["N","N"]],[["N","N"],["N","N"]]]
据说MC的区块就是这么存的……【不懂瞎说的我(划掉)】
说实话,我自己都看不清……(想看展开?自己展去!)
好了,回到正题:
XY_T = input().split(" ") #输入第一行
下面这样做只是为了让萌新好理解:
X = int(XY_T[0]) #横向坐标
Y = int(XY_T[1]) #纵向坐标
T = int(XY_T[2]) #次数
XY = []
C = -1
创建农田:
for i in range(Y):
XY.append([])先从纵向坐标开始
for j in range(X):
XY[i].append("N")然后横向坐标
for s in range(T):
X1Y1_X2Y2 = input().split(" ")#下面这样萌新好理解
# 而且Ctrl + C 还阔以偷懒[faceclap]
X1 = int(X1Y1_X2Y2[0])
Y1 = int(X1Y1_X2Y2[1])
X2 = int(X1Y1_X2Y2[2])
Y2 = int(X1Y1__X2Y2[3])
for i in range(Y1 - 1, Y2):
for j in range(X1 - 1, X2):#记住,数组的下标是从0开始的!
XY[i][j] = "Y"#为啥不用if?[别问!]
c = 0#记录输出
for i in range(Y):#重新遍历防止重复增加
for j in range(X):
if XY[i][j] == "Y":
c += 1
print(C)#愉快的输出,结束!