#39097: c++更簡潔寫法


Tyellow (Tyellow)

學校 : 新北市立板橋高級中學
編號 : 239735
來源 : [203.64.161.123]
最後登入時間 :
2024-11-18 18:40:29
m932. 2. 蜜蜂觀察 -- 2024年1月APCS | From: [114.37.109.18] | 發表日期 : 2024-01-13 13:27

可以使用pair先寫好6種移動方式x, y分別的移動情形

pii d[6] ={{-1, 0}, {0, 1}, {1, 1}, {1, 0}, {0, -1}, {-1, -1}};

這題d的下標剛好可以對應移動方式0~5

 

要移動前先判斷是否出界

if(y+d[q].first>=0 && y+d[q].first<m && x+d[q].second>=0 && x+d[q].second<n)

如果沒出界再更改x, y

y += d[q].first;

x += d[q].second;

code

 

 
ZeroJudge Forum