題目連結(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ù)為何?
2 4
10 5
7 3
因?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)各位大大撥冗討論。