牛客網多校訓練 訓練技巧

2022-05-01 01:51:13 字數 828 閱讀 9737

常州大學組織了新生寒假訓練一共n天,每天訓練可以獲得的訓練效果是ei。但是如果連續訓練超過k天,萌新們會受不了而被勸退。

現在負責人想知道,如何安排能保證萌新不會被勸退並且能獲得最大的訓練效果。

第一行:兩個用空格隔開的整數:n和k,1≤n≤100000,1≤k≤n

第二行到n+1行:第i+1行有乙個整數,表示第n天的訓練效果是ei,(0 <= ei <= 1,000,000,000)

第一行:單個整數,表示最大的能力之和
示例1

5 2 12

34 5

12

(除了第三天以外每天都在訓練,總訓練效果為1+2+4+5=12)

1≤n≤100,000

****

#includeusing

namespace

std;

#define ll long long

const

int n = 1e5+11

;const ll inf = 0x3f3f3f3f3f3f3f3f

;int q[n],st,ed;//

q陣列中的元素滿足遞增規律,作為單調棧

ll dp[n],a[n];

intmain()

ll ans=inf;

for(int i=n-k;i<=n;i++) ans=min(ans,dp[i]);

printf(

"%lld\n

",sum-ans);

}return0;

}

2019牛客多校訓練(五)

求出類似斐波那契數列的第 n 項 n leq 10 我想著尤拉降冪。其實尤拉降冪並不適用於矩陣的運算 隊友看了題之後立馬想到十進位制的矩陣快速冪,太強了 和普通的矩陣不同的是,這個每次乘十前進,但這不是問題 對矩陣快速冪的時間複雜度認識得不深,潛意識以為 n 是乙個無窮大的數 include def...

2019牛客多校訓練(四)

給出一顆樹 讓所有染色點到某個點的最大距離最小 結果為最遠點對的距離除二向上取整 假設有最遠點對的路徑上的中間點 如果有某個點它到這個中間點要遠,那麼最遠點對就不是最遠點對了,產生矛盾 利用樹上點對路徑唯一性,兩次 dfs 求出染色點直徑 include define ll long long de...

2019牛客暑期多校訓練1

equivalent prefixes 這個是乙個用單調棧的題目,至於為什麼可以用單調棧?把兩個陣列同時跑單調棧,如果每次進棧最多乙個,當然在這個進棧之前肯定會有數出棧,如果存在乙個數進棧了,然後這個時候判斷一下進棧的這個數的位置是不是相同,如果不相同就說明肯定是不對的。為什麼說這個時候只要考慮這個...