ACM 12月7日周四周中訓練心得

2021-08-13 04:08:07 字數 857 閱讀 7431

這周訓練賽暫停了,周五,也就是明天會有乙個比賽,想參加試試。

這周老師把專題的時間延長了,其意味不言而喻,看我們鐵定達不成要求了,要把每個題目都要仔細研究。這週看了g這道題,題意大概是有n個boss,其中有n-1個小boss必須先全部打完才能打第n個大boss,打乙個小boss要耗體能usei,打完後恢復一部分vali,一開始體能為100,在打的過程中也最多為100,問能打完全部的boss? 如果能就輸出「clear!!!」, 否則輸出「try again」。準備用dp[i]表示打完i狀態剩餘的最大體能。

for(int i=1;i<(1<<(n-1));i++)  

}

對於d題,題目大致的意思是乙個人要送n份貨,給出乙個矩陣,表示任意兩個點間的直接路徑的時間,求從起點0送完這n份貨(到達指定的n個地點)再回到起點0的最短時間,由於n本身不大,可以狀態壓縮,首先用弗洛伊德處理一下任意兩點的最短路,dp[i][j]表示在狀態i的條件下到城市j的最短時間,如果i == (1 << (j - 1)),表示從只經過城市j,這時候dp[i][j] = dis[0][j],否則就是要經過別的城市到達j,這裡列舉當前狀態下經過的除了j的其他城市,注意一定是當前狀態下,這裡類似floyd,最後dp[(1 << n) - 1][i]表示經過了所有店到達i我們只要列舉dp[(1 << n) - 1][i] + dis[i][0]的最小值即可。 

for(int i = 0; i <= (1 << n) - 1; i++)  

} }

int ans = dp[(1 << n) - 1][1] + dis[1][0];

for(int i = 2; i <= n; i++)

ACM 10月26馹周四周中訓練心得

昨天做了一次訓練賽,是乙個人單打果然感覺思路上會少了些什麼,沒有和他們交流,自己乙個人的思路還是太單一,其他的不多說,對昨天的比賽進行一下覆盤,先做的是第一道題,題目的大致意思是小熊維尼要去兔子老鷹屹耳家做客吃東西,維尼非常貪吃要吃n頓,一開始在兔子家吃,然後其他朋友家裡拜訪吃東西,兔子和老鷹家之間...

12月1日 12月7日第二週週報

沒有接觸過csdn,週報不會寫,看了別人寫的週報,自己感到特別不好意思,以後應該多向別人學習,多多請教會的同學,學習別人的優點。對自己要求太低,應該做好計畫並保質保量完成。學習效率低下,雖然基本上都在實驗室,但是回顧上一周,發現自己並沒有多少收穫,以後應該在保質保量完成任務的同時縮短時間,提高效率。...

ACM週中總結 9月7日

這半個周並沒有在做題,因為是在不會做,除去線段樹的簡單題其他的題完全看懂的不到5道,十分吃力。有兩道印象深刻的題目。染色和區間合併的題。利用線段樹對區間進行操作的題還算挺簡單,無非就是基本操作,可到後面。記得有道關於區間染色的題,給出n條線段 全部垂直於x軸 如果有其中兩線段可以用平行於x軸的線段相...