HAOI2014 走出金字塔 找規律

2022-06-07 01:30:10 字數 703 閱讀 1497

給定乙個金字塔,有 \(n\) 層,\(m\) 個出口,破一面牆的時間為 \(k\),\(s\) 表示體能維持時間。問能否走出,且走出後剩餘的時間。

列舉每個出口,試圖計算從每個出口出去的時間

而這就是計算一對點之間的最短路,考慮將最上面那麼點設為塔頂,設它原來的座標為 \((x_0,y_0)\),兩者的座標差為 \((\delta x,\delta y)\)

如果 \(y_0 = 1\bmod 2\),若 \(\delta y = 0 \bmod 2\),則 \(d=2\delta x\),否則 \(d=2\delta x-1\)

如果 \(y_0 = 0\bmod 2\),若 \(\delta y = 0 \bmod 2\),則 \(d=2\delta x\),否則 \(d=2\delta x+1\)

如果超出了可以到達的部分,就補上多出的距離

(讀錯題自閉十年)

#include using namespace std;

#define int long long

const int n = 10005;

int n,m,k,s,x[n],y[n],aans=1e18;

signed main()

for(int i=1;i<=m;i++)

else

aans=min(aans,ans);

}cout<}

HAOI2014 走出金字塔

找規律。不過為了方便,每次我們計算入口和某乙個出口之間需要花費的體力值的時候,不妨把x較小的假設成塔頂,這樣的話另乙個就不需要分類討論了。詳細請看 include include include include include define maxn 1000010 using namespace ...

haoi2014 走出金字塔

在探險的過程中,考古學家dr.kong 無意地被困在乙個金字塔中。金字塔中的每個房間都是三角形。dr.kong可以破壁走到相鄰的房間去。例如,如果他目前處於三角形 2,2 房間,那麼他可以破壁走到三角形 2,1 2,3 或 1,1 房間。但破壁一面牆需要花費k分鐘時間,而考古學家dr.kong 的體...

python 金字塔 Python金字塔

托倫,函式中有幾個小錯誤和乙個邏輯問題print y to a 請注意,此函式生成乙個以z開頭的字串,但您希望將字串以相反的方向連線,而您的另乙個函式print a to y 確實停止了 1位置 例如 還要注意,您需要新增新行字元 n 以獲得一些不錯的輸出。在 我的解決方案是 def print a...