時間限制: 1 sec
記憶體限制: 128 mb
提交: 81
解決: 53 [
提交][
狀態][
討論版]
最近陝西科技大學六公寓的小東同學深深的入迷了一款遊戲,以至於他想進入這家遊戲公司當程式設計師了。
這款遊戲叫做《絕地求生:大逃殺》。
絕地求生,是一款開放世界策略射擊遊戲,採用虛幻4引擎製作。 是一款大逃殺型別的遊戲,每一局遊戲將有100名玩家參與,他們將被投放在絕地島(battlegrounds)的上空,遊戲開始跳傘時所有人都一無所有。 遊戲展開的方式是:玩家赤手空拳地分布在島嶼的各個角落,利用島上多樣的**與道具。 隨著時間的流逝,島上的安全地帶越來越少,特定地區也會發生轟炸的情況,最終只有一人存活獲得勝利。遊戲的每一局比賽都會隨機轉換安全區,這樣玩家的很新鮮與緊張感會更加強烈。
小東同學玩遊戲也堅決不忘演算法的學習,有一天,他面臨了這樣的情況,小東要前往安全區,他決定冒險通過一片大平原,雖然跑向兩邊的山上更安全,但是時間來不及了。在小東同學奔跑的過程中,渾然不知兩邊的山上各有乙個人趴在那裡埋伏獵物,他們同時發現小東,同時開槍!小東意識到危險了!伴隨了若干聲槍聲,砰砰砰!小東已經倒地了...
小東掛掉之前一秒,意識到了一件事,兩邊的人同時開槍,那麼我又多少種中彈順序呢?比如我有100血,而乙個人用衝鋒槍每發子彈能傷害我30血,另乙個人用步槍每發子彈能傷害我45血,那導致我死亡的中彈順序可能是,30 30 30 45,也可能是 45 45 30,也有可能是45 30 45,等等。當然,血量小於或等於0都算被擊倒。
同時要注意,如果兩人每次對自己造成的傷害是相同的,但仍被看作不同的死亡順序,比如玩家有100血量,左右兩邊的人每次能造成50血量的傷害,那麼答案為4,情況分別為:
50 50(左邊敵人打中了兩槍)。
50 50(右邊敵人打中了兩槍)
50 50(左邊敵人開了第一槍)
50 50(右邊敵人開了第一槍)
本題有多組測試資料。每組佔一行,由三個正整數m n hp組成(10=
對於每組輸入資料,輸出一行,結果為玩家有多少種死亡順序,即中彈順序。
45 30 10050 50 100
12 23 80
9434
#includeusing namespace std;
int sum;
int m,n,hp;
void k(int l)
k(l-m);
k(l-n);
} int main()
return 0;
}
SUST OJ 1642 絕地求生 死亡順序
時間限制 1 sec 記憶體限制 128 mb 提交 81 解決 53 提交 狀態 討論版 最近陝西科技大學六公寓的小東同學深深的入迷了一款遊戲,以至於他想進入這家遊戲公司當程式設計師了。這款遊戲叫做 絕地求生 大逃殺 絕地求生,是一款開放世界策略射擊遊戲,採用虛幻4引擎製作。是一款大逃殺型別的遊戲...
164 最大間距
給定乙個無序的陣列,找出陣列在排序之後,相鄰元素之間最大的差值。如果陣列元素個數小於 2,則返回 0。示例 1 輸入 3,6,9,1 輸出 3 解釋 排序後的陣列是 1,3,6,9 其中相鄰元素 3,6 和 6,9 之間都存在最大差值 3。思路 注釋 public static int maximu...
164 最大間距
開始想的是計數排序,但超時,如 2,999999999 這樣的樣例,記錄陣列太長,有用的佔比太少。後看官方思路,用n 1 n為原陣列元素個數 個桶去篩元素,每個桶能放的元素大小範圍固定,即下面 中的step,處理完後再掃瞄一遍當前桶最大和後繼桶最小值的差,取最大差值為結果。至於為什麼要n 1個桶,我...