51 Nod 1636 教育改革 dp

2021-08-29 04:35:03 字數 1471 閱讀 8606

1636 教育改革

基準時間限制:1 秒 空間限制:131072 kb 分值: 20 難度:3級演算法題

最近a學校正在實施教育改革。

乙個學年由n天組成。a學校有m門課程,每天學生必須學習一門課,一門課程必須在一天內學習完。在學習完第i門課程後,學生們會收到 xi 個家庭作業,其中 xi是區間[ai,bi]裡的乙個整數 。每門課還有乙個屬性,就是複雜度 ci 。a學校現在要制他們的課程表,具體要求如下:

·在課程表中,隨著天數的增加,課程的複雜度是嚴格遞增的。

·除了第1天,每天的作業量必須是前一天的k倍,或者比前一天多k個作業。(假設第i天的作業量為 xi ,則對於i(1<i≤n)到滿足 xi = k+xi−1 或 xi = k⋅xi−1 );

現在,給定天數n,係數k,和m門課程的ai,bi,ci(1≤i≤m)。要求計算乙個學年可以安排最大的總作業量( 總作業量的表示式是∑ni=1xi )是多少。

input

單組測試資料

第一行,三個由空格隔開的整數n,m,k(1≤n≤m≤50,1≤k≤100),表示乙個學年的天數,課程的數量,和作業增量係數。

接下來的m行,

每行有三個整數,ai,bi,ci(1≤ai≤bi≤10^16,bi-ai≤100,1≤ci≤100)

分別表示第i門課程的最小作業量,和最多作業量,以及複雜度。

不同的課程可以有相同的複雜度。課程編號從1到m。

output

如果有可行方案,第一行輸出「yes」(沒有引號),第二行輸出最大的作業量。

如果沒有可行方案,則輸出一行「no」(沒有引號)。

input示例

4 5 2

1 10 1

1 10 2

1 10 3

1 20 4

1 100 5

output示例

yes

78

**有點亂,基本思路就是狀態的轉移,多注意點細節就好啦

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;

#define inf 0x3f3f3f3f

typedef long long ll;

int n,m,k;

ll a[55];ll b[55];int c[55];

int id[55];

ll ans=0;bool ok=0;

ll dp[55][55][105];

bool cmp(int aa,int bb)}}

}for(int j=0;j

}int main()

return 0;

}

51nod 1636 教育改革

1636 教育改革 codeforces 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 最近a學校正在實施教育改革。乙個學年由n天組成。a學校有m門課程,每天學生必須學習一門課,一門課程必須在一天內學習完。在學習完第i門課程後,學生們會收到 xi 個家庭作業,其...

51NOD 1636 教育改革 (DP 思維)

題意 題解 根據題意,很容易寫出dp i j 表示第 i 天,作業量為 j 的最大的總作業量。但是 j 為1e16很大,空間 所以需要想辦法,把每天的作業量表示出來。根據資料可知,每天的作業量的最大值最小值不超過100,根據這個條件。我們顯然能推出 dp i j l 表示第 i 天選 第 j 門,且...

51NOD 1239 尤拉函式之和(杜教篩)

題目鏈結 分析 這道題看的是唐老師的blog 感覺還是一知半解,然而學校裡的dalao都去長沙了 只留下我們這些蒟蒻 然而蒟蒻沒有dalao的點撥怎麼學習啊。用了將近一小時,終於理解了,嘗試著來化簡一下 我們要求的是 在化簡之前,先提出phi函式的乙個性質 我們就從這個式子下手 具體的 好像有兩種實...