【洛谷】P1830 轟炸III 【python版】
1.題意
略
2.分析
直接模擬
- 使用python 申請一個二維數組【使用生成表達式】
3.代碼
s = input()
nums = s.strip().split()
nums = [int(num) for num in nums]
n,m,x,y = nums[0:4]
arr = [[0 for i in range(m+5)] for j in range(n+5)] # 使用一個二維數組 N*M 存儲各個座標被炸的情況
flag = [[0 for i in range(m+5)] for j in range(n+5)] # 使用一個二維數組 N*M 存儲各個座標被炸的情況
# 輸入炸掉的座標
for i in range(x):
s = input()
nums = s.strip().split()
nums = [int(num) for num in nums]
lx,ly ,rx,ry = nums[0:4] # 得到左上右下的座標
for k in range(lx,rx+1):
for j in range(ly ,ry+1):
arr[k][j]+=1;
flag[k][j] = i+1
# 輸入
for i in range(y):
s = input()
nums = s.strip().split()
nums = [int(num) for num in nums]
qx,qy = nums[0:2]
if arr[qx][qy] != 0:
print("Y",arr[qx][qy],flag[qx][qy])
else:
print("N")