HDU6119 小小粉絲度度熊(區間)

2021-08-06 04:47:26 字數 651 閱讀 9384

/*

區間有n個區間,這n個區間內的天數,都簽到了,m表示m張補簽卡

區間可能存在交叉的情況,求最多連續簽到多少天

*/#include

#include

#include

#include

using

namespace

std;

typedef

long

long ll;

int n,m;

const

int maxn=1e5+5;

ll sum[maxn];

struct node

cnt[maxn];

bool cmp(node a,node b)

sort(cnt,cnt+n,cmp);

int k=0;

for(int i=1; i//合併有交集的區間

else

}for(int i=1; i<=k; i++)//預處理區間差值的字首和

int j=0;

ll ans=0;

for(int i=0; i<=k; i++)

printf("%i64d\n",ans);

}return

0;}

HDU6119 小小粉絲度度熊

思路 如果我們把覆蓋的區間和未覆蓋的分開,那麼我們可以構造出乙個序列 例如 7543598 粗體的表示中間沒有簽到的部分,而相鄰的部分就是已經連續簽到了的部分。那麼題目實際上就是我們可以單獨的覆蓋m天,然後怎麼樣覆蓋才能獲得最大的連續區間,然後求出這個連續的區間大小。嗯,根據範圍基本上確定是乙個nl...

hdu6119 小小粉絲度度熊

題目傳送門 思路 首先題目中說區間可能有交叉,所以第一步我們先處理一下區間重疊的情況把重疊的區間合併一下 第二步我們只需要尺取一下找最大區間就可以了 include include include include using namespace std const int maxn 1e9 7 st...

hdu 6119 小小粉絲度度熊 想法題

problem description 度度熊喜歡著喵哈哈村的大明星 星星小姐。為什麼度度熊會喜歡星星小姐呢?首先星星小姐笑起來非常動人,其次星星小姐唱歌也非常好聽。但這都不是最重要的,最重要的是,星星小姐拍的一手好 於是度度熊關注了星星小姐的貼吧。一開始度度熊決定每天都在星星小姐的貼吧裡面簽到。但...