堅果保齡球題解(c )

2021-10-24 15:38:24 字數 814 閱讀 9346

1.由題可知棋盤大小為 6 行 60 列,遊戲開始後每秒任意行的最後一列都有可能出現若干zombie,玩家每秒可以在任意行的第一列放置若干堅果,堅果可瞬間殺死所在行的所有zombie,zombie每秒向左走一列,走到第一列時還沒有堅果殺死zombie則遊戲失敗。

2.題目要求用最少的堅果殺死所有zombie,每個zombie從第 60 列到第 1 列需要 59 秒,所以某行從某個zombie出生的那一秒到 59 秒之間,所有該行的zombie用乙個堅果可以解決。

3.使用結構體陣列a[i].l和a[i].t記錄zombie將要走的行以及出現在最後一列的時間,再用b[ ]記錄一下zombie是否存活 b[i] = 1則表示存活,反之死亡,最後通過迴圈遍歷,求出至少使用多少個堅果。

#include

using

namespace std;

struct zombiea[

2001];

int b[

2001];

//判斷殭屍是否去世

bool

compare

(zombie x,zombie y)

intmain()

sort

(a, a+n, compare)

;for

(int i =

0;i < n; i++

)int j = i+1;

count++

;while

(j < n)

j++;}

} cout << count << endl;

return0;

}

洛谷 貪心 P1413 堅果保齡球

把殭屍按照t為關鍵字從小到大排序,t相同時p為關鍵字 然後用a陣列來儲存每一道最早能攔截到的乙個殭屍的編號 如果道一樣,當前殭屍出現時間 之前的殭屍 60說明這乙個堅果攔不到,要增加乙個 include include include define ms i,j memset i,j,sizeof ...

C語言保齡球

保齡球計分規則簡單總結如下 每次遊戲有10輪 每一輪,投手有兩次投擲機會擊倒所有瓶子 如果在兩次投擲中,投手沒有擊倒所有瓶子,他在本輪分數計為兩次擊倒的瓶子數之和 如果在某一輪的首次就擊倒所有瓶子,這稱為乙個 strike 一投全倒 則本輪結束,本輪分數計為10 後續兩次擊倒的瓶子總數 如果在某一輪...

C 採藥題解

演算法 裸01揹包。分析 這是最基礎的揹包問題,特點是 每種物品僅有一件,可以選擇放或不放。用子問題定義狀態 即f i v 表示前i件物品 部分或全部 恰放入乙個容量為v的揹包可以獲得的最大價值。則其狀態轉移方程便是 f i v max。這個方程非常重要,基本上所有跟揹包相關的問題的方程都是由它衍生...