貪心
題意:有n個人要過河,只有一條船,而且每次只能坐2個人,過河花費的時間為2個人中划船最慢的那個人的時間,現在給出每個人過河花費所需的時間,問n個人全部過去所需要的最小時間。
思路:注意船開過去後需要有乙個人劃回來而且也算入總需要時間。每次設法送隊伍中最慢和次慢的人過河,送他們過河的方法有2種:1.最快、次快過去,最快回來,最慢、次慢過去,次快回來t[1]+t[0]+t[n-1]+t[1]。2.最快、最慢過去,最快回來,最快次慢過去,最快回來t[n-1]+t[0]+t[n-2]+t[0]。每次只要選擇其中最小花費的一種即可,運完後剩下的人數為n-2。當人數為3、2、1時候可以直接計算。
#include#include#includeusing namespace std;
int t[1001];
int n,t;
int main()
if(n==3)
else if(n==2)
else if(n==1)
printf("%d\n",ans);
} return 0;
}
暑假集訓 貪心專題 F題
貪心 題意 有乙個座標軸,在x軸上可以放半徑為r的雷達,x軸上方有n個海島,給出每個海島的座標,問如何用最少的雷達覆蓋全部的海島,如果覆蓋不了全部就輸出 1。思路 算出每個海島可以被掃到的區間,然後根據區間覆蓋情況,算出需要的最少雷達。注意區間的左端為x sqrt r r y y 右端為x sqrt...
暑假集訓 貪心專題 I題
貪心 題意 有乙個n種顏料的套組,每種顏料有50ml,還有一種沒有的灰色顏料,需要其他任意三種顏料來配置,如果三種顏料用xml來配置可以配置出xml的灰色顏料,問給出每種顏料及灰色顏料所需要的配置ml數,求最小的顏料套組總數。思路 先算出除灰色之外的其他顏料所需的最大值,求出需要的套數,然後用每種顏...
暑假集訓 貪心專題 E題
貪心 題意 有m個人玩牌,每個人有n張手牌,手牌點數最大為n m,每場每個人拿除一張手牌,誰最大誰贏,現在給出你的手牌點數,問你一定能贏多少場。思路 先將手牌從大到小排序,每次列舉一張牌,看比它大的手牌是否已經出現過,你的手牌均為已經出現過 如果所有比它大的手牌已經出現過,那麼這局出這張一定能贏。i...