ETH官方钱包

切換
舊版
前往
大廳
主題

ZeroJudge - c318: rilak的期末考 前傳 解題心得

Not In My Back Yard | 2018-12-29 23:39:09 | 巴幣 0 | 人氣 153

題目連結(jié):


題目大意:
第一列會(huì)給定兩正整數(shù) N 、 T ( 1 ≦ N 、 T ≦ 1, 000 ), N 代表有多少章節(jié)、 T 代表有多少單位的時(shí)間。

接下來(lái)的 N 列,每列有兩正整數(shù) S 、 D ( 1 ≦ S ≦ 500 , 1 ≦ D ≦ 100 )。代表第一次閱讀此章節(jié)會(huì)得 S 分,第二次閱讀會(huì)得 S - D 分,第三次則得 S - 2D 分……以此類(lèi)推。到最後沒(méi)有分?jǐn)?shù)可扣時(shí),再次閱讀此章節(jié)將不會(huì)獲得任何分?jǐn)?shù)。

給定了以上的章節(jié)分?jǐn)?shù),求在時(shí)間 T 以?xún)?nèi)閱讀以上章節(jié),能獲得的最高分?jǐn)?shù)為何?



範(fàn)例輸入:
2 4
10 5
7 3



範(fàn)例輸出:
26



解題思維:
因?yàn)槊看伍喿x同一章節(jié)會(huì)得到不同的分?jǐn)?shù)。那麼我們就可以對(duì)每個(gè)章節(jié)做窮舉,窮舉閱讀第一次的分?jǐn)?shù)、第二次的分?jǐn)?shù)……直到分?jǐn)?shù) ≦ 0。

當(dāng)我們把所有章節(jié)的可能都閱讀完後,我們可以直接對(duì)所有可能的分?jǐn)?shù)由大到小排序。排序完後,便從第一個(gè)數(shù)字拿,直到拿了 T 個(gè)數(shù)字或到數(shù)列結(jié)束為止。

以範(fàn)例輸入為例,所有可能獲得章節(jié)分?jǐn)?shù)如下:
10 、 5 、 7 、 4 、 1
排序後為:
10 、 7 、 5 、 4 、 1
因?yàn)?T = 4 ,因此我們?nèi)∏八膫€(gè)數(shù)字。於是便得到能獲得的最高分?jǐn)?shù)之值為
10 + 7 + 5 + 4 = 26

此次分享到此為止,如有任何更加簡(jiǎn)潔的想法或是有說(shuō)明不清楚之地方,也煩請(qǐng)各位大大撥冗討論。

創(chuàng)作回應(yīng)

更多創(chuàng)作