Noip2006T3 作業排程方案 解題報告

2021-09-22 05:44:12 字數 1084 閱讀 3501

【題面】

洛谷p1065

【思路】

顯然這是一道模擬題

而且是很煩的模擬題

我的寫法大概是這樣:

對於當前所需要的機器

掃瞄一下它的狀態

有滿足流程的足夠的空隙在最左的地方插空

否則往最右邊插

插入的區間用兩個變數表示 乙個記錄座標,乙個記錄它是左端點還是右端點

排序是按照座標排序

掃瞄時如果發現乙個右端點到左端點之間的距離做夠就插入

如果當前座標小於滿足當前工件的最小值就continue

初次之外還有一些實現上的細節

具體可以看我的**

雖然沒有注釋

變數名比較清楚 大概

【**】

#include

using namespace std;

struct buzhidao zt[25]

[805];

bool cmp

(buzhidao x,buzhidao y)

int shunxu[

405]

,jiqi[25]

[25],shijian[25]

[25],gjs[25]

;int xianzai[25]

,qs[25]

;int

main()

bool f=true;

for(

int j=

0;j;j++

)else

}continue;}

if(zt[jiqi]

[j+1

].yi-zt[jiqi]

[j].yi>=shijian||zt[jiqi]

[j+1

].er==0)

}if(f)}

int ans=-1

;for

(int i=

1;i<=n;i++)if

(qs[i]

>=ans)

ans=qs[i]

;printf

("%d"

,ans)

;return0;

}

NOIP2006T 作業排程方案

問題描述 我們現在要利用m臺機器加工n個工件,每個工件都有m道工序,每道工序都在不同的指定的機器上完成。每個工件的每道工序都有指定的加工時間。一方面,每個操作的安排都要滿足以下的兩個約束條件。1 對同乙個工件,每道工序必須在它前面的工序完成後才能開始 2 同一時刻每一台機器至多只能加工乙個工件。另一...

NOIP2006T 能量項鍊

描述 在mars星球上,每個mars人都隨身佩帶著一串能量項鍊。在項鍊上有n顆能量珠。能量珠是一顆有頭標記與尾標記的珠子,這些標記對應著某個正整數。並且,對於相鄰的兩顆珠子,前一顆珠子的尾標記一定等於後一顆珠子的頭標記。因為只有這樣,通過吸盤 吸盤是mars人吸收能量的一種器官 的作用,這兩顆珠子才...

NOIP 2006 作業排程方案

題目描述 我們現在要利用m臺機器加工n個工件,每個工件都有m道工序,每道工序都在不同的指定的機器上完成。每個工件的每道工序都有指定的加工時間。每個工件的每個工序稱為乙個操作,我們用記號j k表示乙個操作,其中j為1到n中的某個數字,為工件號 k為1到m中的某個數字,為工序號,例如2 4表示第2個工件...