time limit: 1000ms
memory limit: 65536kb
submit
statistic
problem description
pbh 最近在玩乙個遊戲。遊戲中玩家有 100 的血量,目前有 n 個小怪,小怪會按順序前來攻擊玩家且小怪只會採用 1v1 的方式,玩家每次可秒殺乙個小怪,並受到小怪攻擊力的傷害(血量減少小怪攻擊力的數值),打死小怪會掉落藥水。
現在問題來了,打完這 n 個小怪最少需要喝多少瓶藥水(喝藥水不耗時)?
input
先輸入乙個整數 t 表示資料的組數,t 不超過 1000。
對於每組資料,第一行先輸入小怪的個數 n (1 <= n <= 100),接下來的 n 行輸入小怪攻擊力 atki (1 <= atki <= 50) 以及小怪掉落 mi (0 <= mi <= 4) 個藥水和藥水所能恢復生命的值 ai (1 <= ai <= 30)。
output
對於每組資料先輸出 "case #x: ",x 表示當前為第幾組資料,之後輸出打完所有小怪需要的最少藥水數。如果無法殺死這 n 個小怪,即某次攻擊小怪時已無藥水可用且當前血量無法攻擊小怪(小怪攻擊大於等於當前血量),則輸出 」qaq」。
所有輸出均不包括引號。
example input
3250 1 20
49 0
450 1 10
40 0
30 3 20 30 20
10 0
350 3 20 15 1
45 2 1 1
27 0
example output
case #1: 0case #2: qaq
case #3: 2
#include #include struct sdut
;int main()
else
}if(blood > atki)
}scanf("%d", &mi);
while(mi--)
p -> next = q -> next;
q -> next = p;}}
if(flag == 1)
else
}return 0;
}
c語言 鍊錶 C語言鍊錶例項 玩轉鍊錶
下圖為最一簡單鍊錶的示意圖 第 0 個結點稱為頭結點,它存放有第乙個結點的首位址,它沒有資料,只是乙個指標變數。以下的每個結點都分為兩個域,乙個是資料域,存放各種實際的資料,如學號 num,姓名 name,性別 和成績 score 等。另乙個域為指標域,存放下一結點的首位址。鍊錶中的每乙個結點都是同...
c語言鍊錶 鍊錶
在儲存一大波數的時候,我們通常使用陣列,但有時候陣列顯得不夠靈活,比如有一串已經從小到大排序好的數 2 3 5 8 9 10 18 26 32 現在需要往這串數中插入6使其得到的新序列仍符合從小到大排列。如果我們使用陣列來實現這一操作,則需要將8和8後面的數字都依次往後挪一位,如果你覺得這幾個數不算...
c語言 鍊錶 C語言之鍊錶入門
鍊錶三要素 1 頭指標 head 是用來說明鍊錶開始了,頭指標就代表鍊錶本身 所以以後要訪問鍊錶,就要訪問頭指標 2 結點 node 鍊錶中每乙個結構體變數 3 尾指標 用來說明鍊錶的結束 它是乙個空指標,null include includetypedef struct stud 定義了乙個結構...