貪心 回溯(磁帶長度)

2021-06-26 14:13:06 字數 855 閱讀 5107

/*題目內容:

設有n個程式要存放在長度為l的磁帶上。程式i存放在磁帶上的長度是li,1<=i<=n.

程式儲存問題要求確定這n個程式在磁帶上的乙個儲存方案,使得能夠在磁帶上儲存盡可能多的程式。在保證儲存最多程式的前提下,

要求磁帶的利用率最大。

程式設計任務:對於給定的n個程式存放在磁帶上的長度,程式設計計算磁帶上最多可以儲存的程式數和占用磁帶的長度。

輸入描述

第一行是2個正整數,分別表示檔案個數n和磁帶長度l。第二行中,有n個正整數,表示程式存放在磁帶上的長度。

輸出描述

第一行輸出最多可以儲存的程式數和占用磁帶的長度;第二行輸出存放在磁帶上的每個程式的長度。

輸入樣例

9 50

2 3 13 8 80 20 21 22 23

輸出樣例

5 49

2 3 13 8 23

#include using namespace std;

int n;//個數

int c;//載重量

int w[100];

int x[100];//當前搜尋的解向量

int r;//剩餘的載重量

int cw;//當前載重量

int bestw;//當前最優解

int best[100];//當前最優解

int count;//統計1的個數

int sum;//最大儲存數

void backtrack(int t) }

int main()

//公升序排序

for(i=1;ia[j+1])

} }// for(i=1;i<=n;i++){

// cout<

磁帶的最優儲存 貪心演算法

題目 磁帶的最優儲存 假定有 n個程式需存放在長度為 l的磁帶上,每乙個程式 i有長度l i 1 i n,l 1 l 2 l n l.假定無論什麼時候,檢索該帶上的某個程式時,帶的位置都處於始端。因此,若程式按 i i 1 i 2 i n 存放時,則檢索時間 i j 的時間 t j 為l i 1 l...

活動選擇(貪心 貪心 回溯深搜)

描述 學校在最近幾天有n個活動,這些活動都需要使用學校的大禮堂,在同一時間,禮堂只能被乙個活動使用。由於有些活動時間上有衝突,學校辦公室人員只好讓一些活動放棄使用禮堂而使用其他教室。現在給出n個活動使用禮堂的起始時間begini和結束時間endi begini endi 請你幫助辦公室人員安排一些活...

hdu1789 貪心 回溯

hdu1789 鏈結題目傳送 include include include includeusing namespace std define n 10010 int v n t,sum,n,flag struct node bool cmp node a,node b int main if f...