魚塘釣魚(fishing)
【問題描述】
有n個魚塘排成一排(n<100),每個魚塘中有一定數量的魚,例如:n=5時,如下表:
即:在第1個魚塘中釣魚第1分鐘內可釣到10條魚,第2分鐘內只能釣到8條魚,……,第5分鐘以後再也釣不到魚了。從第1個魚塘到第2個魚塘需要3分鐘,從第2個魚塘到第3個魚塘需要5分鐘,……
【程式設計任務】
給出乙個截止時間t(t<1000),設計乙個釣魚方案,從第1個魚塘出發,希望能釣到最多的魚。
假設能釣到魚的數量僅和已釣魚的次數有關,且每次釣魚的時間都是整數分鐘。
【輸入格式】
輸入檔案共5行,分別表示:
第1行為n;
第2行為第1分鐘各個魚塘能釣到的魚的數量,每個資料之間用一空格隔開;
第3行為每過1分鐘各個魚塘釣魚數的減少量,每個資料之間用一空格隔開;
第4行為當前魚塘到下乙個相鄰魚塘需要的時間;
第5行為截止時間t;
【輸出格式】
輸出檔案僅乙個整數(不超過231-1),表示你的方案能釣到的最多的魚。
【輸入樣例】
510 14 20 16 9
2 4 6 5 3
3 5 4 4
14【輸出樣例】
76/*
雖然不得不承認——資料庫stl是個好東西
*/#include
#include
#include //優先佇列!!
#define fish first
#define lake second
using namespace std;
priority_queue< pair>heap;//注意!!書名號之間必須有空格!
int t[101],f[101],d[101];
int ans,m,max,n,k,tl,time;
int main()
while(time>0&&heap.top().fish>0)
if(ans>max)max=ans;//打擂台
tl+=t[k]; //用時累計
}cout
}
魚塘釣魚題解(堆解決)
這道題可以用 貪心 大根堆 來解決。先把題目放上來。描述 有n個魚塘排成一排 n 100 每個魚塘中有一定數量的魚,例如 n 5時,如下表 魚塘編號 123 45每1分鐘能釣到的魚的數量 1.1000 10 1420169 每1分鐘能釣魚數的減少量 1.100 246 5354 4即 在第1個魚塘中...
為什麼不創新
常見人抒情說,中國為什麼沒有kik呢?為什麼沒有instagram呢?語極哀怨。善,來看看 創新 需要什麼樣的土壤培植。首先人是網際網路上的第一生產力,一支能創新的團隊,必然具備以下的五個特徵。1 有創新的能力 不客氣地講,有創新能力的人不足10 的比例,即便在平均素質較高的網際網路行業,也不會超過...
CIO為什麼說「不」
選擇 是 對於有些人來說,是一種逃避責任的最好辦法,所有的後果都可以由那個提出建議的人來承擔。而當你說 不 的時候,不但會憑空給自己樹立很多對立面,同時也會將所有的責任肩負在自己身上。說 不 對於 cio來講是需要一定的勇氣,但更為重要的是它要求 cio具備乙個理性的頭腦。itit it建設勢必要 ...