題目 2243:
藍(lán)橋杯算法訓(xùn)練-Beaver's Calculator
時(shí)間限制: 2s
內(nèi)存限制: 192MB 提交: 9 解決: 2
題目描述
從萬能詞典來的聰明的海貍已經(jīng)使我們驚訝了一次。他開發(fā)了一種新的計(jì)算器,他將此命名為"Beaver's Calculator 1.0"。它非常特別,并且被計(jì)劃使用在各種各樣的科學(xué)問題中。
為了測試它,聰明的海貍邀請了n位科學(xué)家,編號從1到n。第i位科學(xué)家給這個(gè)計(jì)算器帶來了 ki個(gè)計(jì)算題。第i個(gè)科學(xué)家?guī)淼膯栴}編號1到n,并且它們必須按照編號一個(gè)一個(gè)計(jì)算,因?yàn)閷τ诿總€(gè)問題的計(jì)算都必須依賴前一個(gè)問題的計(jì)算結(jié)果。
每個(gè)教授的每個(gè)問題都用一個(gè)數(shù) ai, j 來描述,i(1≤i≤n)是科學(xué)家的編號,j(1≤j≤ ki )是問題的編號, ai, j 表示解決這個(gè)問題所需資源單位的數(shù)量。
這個(gè)計(jì)算器非常不凡。它一個(gè)接一個(gè)的解決問題。在一個(gè)問題解決后,并且在下一個(gè)問題被計(jì)算前,計(jì)算器分配或解放資源。
計(jì)算器中最昂貴的操作是解放資源,解放遠(yuǎn)遠(yuǎn)慢于分配。所以對計(jì)算器而言,每一個(gè)接下來的問題所需的資源不少于前一個(gè),是非常重要的。
給你關(guān)于這些科學(xué)家所給問題的相關(guān)信息。你需要給這些問題安排一個(gè)順序,使得“壞對”盡可能少。
所謂“壞對”,就是相鄰兩個(gè)問題中,后一個(gè)問題需求的資源比前一個(gè)問題少。別忘了,對于同一個(gè)科學(xué)家給出的問題,計(jì)算它們的相對順序必須是固定的。
輸入格式
第一行包含一個(gè)整數(shù)n,表示科學(xué)家的人數(shù)。接下來n行每行有5個(gè)整數(shù),ki, ai,?1, xi, yi, mi (0?≤ ai,?1 < mi ≤?109, 1?≤ xi, yi ≤?109) ,分別表示第i個(gè)科學(xué)家的問題個(gè)數(shù),第1個(gè)問題所需資源單位數(shù),以及3個(gè)用來計(jì)算 ai, j 的參量。ai, j =?(ai, j -?1 * xi + yi)mod mi。
輸出格式
第一行輸出一個(gè)整數(shù),表示最優(yōu)順序下最少的“壞對”個(gè)數(shù)。
如果問題的總個(gè)數(shù)不超過200000,接下來輸出 行,表示解決問題的最優(yōu)順序。每一行兩個(gè)用空格隔開的整數(shù),表示這個(gè)問題所需的資源單位數(shù)和提供這個(gè)問題的科學(xué)家的編號。
提示
零基礎(chǔ)同學(xué)可以先學(xué)習(xí)
視頻課程,包含C/C++、Python、百練、藍(lán)橋杯輔導(dǎo)、算法數(shù)據(jù)結(jié)構(gòu)等課程,提供視頻講解以及配套習(xí)題,還有老師答疑,
點(diǎn)擊這里了解課程詳情
標(biāo)簽