【bzoj2006】【NOI2015】超级钢琴
生活随笔
收集整理的這篇文章主要介紹了
【bzoj2006】【NOI2015】超级钢琴
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
2006: [NOI2010]超級(jí)鋼琴
Time Limit:?20 Sec? Memory Limit:?512 MBSubmit:?4292? Solved:?2195
[Submit][Status][Discuss]
Description
小Z是一個(gè)小有名氣的鋼琴家,最近C博士送給了小Z一架超級(jí)鋼琴,小Z希望能夠用這架鋼琴創(chuàng)作出世界上最美妙的 音樂(lè)。 這架超級(jí)鋼琴可以彈奏出n個(gè)音符,編號(hào)為1至n。第i個(gè)音符的美妙度為Ai,其中Ai可正可負(fù)。 一個(gè)“超級(jí) 和弦”由若干個(gè)編號(hào)連續(xù)的音符組成,包含的音符個(gè)數(shù)不少于L且不多于R。我們定義超級(jí)和弦的美妙度為其包含的 所有音符的美妙度之和。兩個(gè)超級(jí)和弦被認(rèn)為是相同的,當(dāng)且僅當(dāng)這兩個(gè)超級(jí)和弦所包含的音符集合是相同的。 小Z決定創(chuàng)作一首由k個(gè)超級(jí)和弦組成的樂(lè)曲,為了使得樂(lè)曲更加動(dòng)聽(tīng),小Z要求該樂(lè)曲由k個(gè)不同的超級(jí)和弦組成。 我們定義一首樂(lè)曲的美妙度為其所包含的所有超級(jí)和弦的美妙度之和。小Z想知道他能夠創(chuàng)作出來(lái)的樂(lè)曲美妙度最 大值是多少。Input
第一行包含四個(gè)正整數(shù)n, k, L, R。其中n為音符的個(gè)數(shù),k為樂(lè)曲所包含的超級(jí)和弦個(gè)數(shù),L和R分別是超級(jí)和弦所 包含音符個(gè)數(shù)的下限和上限。 接下來(lái)n行,每行包含一個(gè)整數(shù)Ai,表示按編號(hào)從小到大每個(gè)音符的美妙度。 N<=500,000 k<=500,000 -1000<=Ai<=1000,1<=L<=R<=N且保證一定存在滿足條件的樂(lè)曲Output
只有一個(gè)整數(shù),表示樂(lè)曲美妙度的最大值。
題解:
?????? 就是求長(zhǎng)度在[L,R]之內(nèi)的前n大區(qū)間的和;
???????? 維護(hù)前綴和sum[i] – sum[j]?? (j<i , L<=i-j<=R ) 的前n大;
???????? 有L,R的限制,設(shè)計(jì)狀態(tài)(i,j,k)表示可以選取的值為sum[i] – sum[j –> k] , sum[i]一定,可以用rmq得到此時(shí)的最大值,對(duì)于所有右端點(diǎn)i把(i,i-R,i-L) 一起丟進(jìn)優(yōu)先隊(duì)列里面,每次取出最大值,如果選中了(i,j,k),且最大值為sum[i]-sum[p] ,就把(i,j,p-1),(i,p+1,k)重新放回優(yōu)先隊(duì)列;
???????
轉(zhuǎn)載于:https://www.cnblogs.com/Paul-Guderian/p/10092804.html
總結(jié)
以上是生活随笔為你收集整理的【bzoj2006】【NOI2015】超级钢琴的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java compareTo() 用法注
- 下一篇: typescript tslint ru