學習打卡 真 第16天(補發) 爐石yyds

2021-10-17 10:53:15 字數 2365 閱讀 3352

以後一周的部落格只能一天發了

平時上班忙

真沒時間寫這個

這周開始寫排序了

上次競賽有個桶排的題就沒做

唉~所以加強練習一下

每天就瞎水題emmm

看到乙個爐石的題

感覺還不錯

對我這個菜雞來說也挺難的

就放在這裡了

題目描述

yumis最近在玩爐石傳說。

在爐石傳說中髒牧有一張一費卡片(一費就是使用要消耗1點法力水晶),叫做瘋狂藥水,這個的效果是將乙個敵方場上攻擊小於等於2的隨從拉到自己的戰場內。

還有一張四費卡片叫做暗影狂亂,這個的效果是將乙個敵方場上攻擊小於等於3的隨從拉到自己的戰場內。

還有一張一費卡片就是縮小藥水,這個的效果是將敵人全場的隨從攻擊力下降3點。

你py了爐石的gm所以你有了無數張的這三種卡片,但是gm告訴你縮小藥水是這個牌比較不好建立,為了為gm著想你必須在使用最少的縮小藥水的情況下a爆對手的臉。

現在你的對手場上有n個隨從,每個隨從的攻擊力是ki點。

你的對手有m點血量。

而你現在要做的就是將敵方的場上的隨從拉過來自己的場上並攻擊對手(每乙個隨從只能攻擊一次,攻擊力為你拉過來的時候隨從剩餘的攻擊力),a爆對面的臉(將對面的血打到0點及以下)。

輸入格式

第一行用乙個空格隔開的兩個整數n,m分別代表敵方場上的隨從數量和你對手的血量。

第二行n個整數每兩個整數之間用乙個空格隔開,分別代表敵方場上每乙個隨從的攻擊力ki。

輸出格式

一行如果可以a爆則輸出最少使用的縮小藥水的數量和此時使用的法力水晶,兩個資料之間用乙個空格隔開(如果有多個答案則輸出消耗法力水晶最少的答案)。

否則輸出「human cannot win dog」(沒有雙引號)

樣例說明1:

敵方場上有3只隨從,敵方有5點血量

我們把3攻隨從和2攻隨從拉過來花費0個縮小藥水和5點耗費(一張瘋狂藥水乙個暗影狂亂(1+4 = 5))傷害足夠擊殺對方。

樣例說明2:

使用16個縮小藥水(下面資料後面第乙個括號指拉過來的時候傷害為多高 ,第二個括號表示拉過來的時候使用多少的縮小藥水)

拿10(1)(3)、20(2)(6)、30(3)(9)、50(2)(16)攻的怪物總共造成8點傷害 剛好a爆!

easy : 保證 0 < n <= 10 並且不存在用到暗影狂亂和縮小藥水的情況 20%

normal :保證 0 < n <= 10 並且不存在用到縮小藥水的情況 20%

hard :保證 0 < n <= 10 30%

extra:保證0 <= n <= 5000000(6個0),最大攻擊力小於30000 30%

#include

#define max(a,b) a>b?a:b

#define min(a,b) ausing

namespace std;

int a[

30005

],used[5]

,maxn=

-100

,sum=

0,ans=

0,cnt=0;

const

int cost[5]

=;inline

intread()

while

(ch>=

'0'&&ch<=

'9')

return sign?

-x:x;

}inline

intclac

(int x,

const

int num)

used[x]

+=num;

ans+

=cost[x]

*num;

return x*num;

}int

main()

maxn=

min(maxn,

29998);

for(

int i=

1;i<=maxn&&sum)if

(sumreturn

puts

("human cannot win dog"),

0;while

(sum-

3>=m&&used[3]

)--used[3]

,ans-=4

,sum-=3

;while

(sum-

1>=m&&used[1]

)--used[1]

,--ans,

--sum;

while

(sum-

2>=m&&used[2]

)--used[2]

,--ans,sum-=2

; cout<" "

}

學習打卡第18天(補發)

度私 庶民 気持 理解 初 場所 訪 広 料理 內容 金額 確 驚 安 料理 金額 取 足 最 金額 高 選 考 考 私 何 來 庶民 気持 理解 金額 考 最 高 選 意味 來 見 最 高 料理 注文 私 悪評 広 可能性 高 選 味 確 店 22 番目 高 料理 注文 思 料理 金額 書 出 料...

第22天學習打卡

即同一方法可以根據傳送物件的不同而採用多種不同的行為方式。乙個物件的實際型別是確定的,但可以指向物件的引用型別有很多。引用一般指 父類,有關係的類 有繼承關係 子類重寫父類方法 父類引用指向子類物件 instanceof 型別轉換,引用型別轉換 判斷乙個物件是什麼型別package com.oop....

python學習第16天

1.time 獲取本地時間戳 2.localtime 獲取本地時間元組 引數是時間戳,預設為當前 3.mktime 通過時間元組獲取時間戳 引數是時間元組 4.ctime 獲取本地時間字串 引數是時間戳,預設當前 5.asctime 通過時間元組獲取時間字串 引數是時間元組 了解 弊端 不能自動識別...