国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Hdu 3486 Interviewe(二分+RMQ)

2019-11-14 08:48:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
題目地址:http://acm.hdu.edu.cn/showPRoblem.php?pid=3486

思路:二分選擇個(gè)數(shù)m即可,開(kāi)始只考慮各個(gè)區(qū)間長(zhǎng)度,未考慮是否能夠選夠m個(gè),wa了幾次。。。。

#include<cstdio>#include<cmath>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int maxn=2e5+50;int n,k;int a[maxn];int preLog2[maxn];int stTable[maxn][32];void st_prepare(int n,int *array){    preLog2[1]=0;    for(int i=2; i<=n; i++)    {        preLog2[i]=preLog2[i-1];        if((1<<preLog2[i]+1)==i) preLog2[i]++;    }    for(int i=n-1; i>=0; i--)    {        stTable[i][0]=array[i];        for(int j=1; (i+(1<<j)-1)<n; j++)        {            stTable[i][j]=max(stTable[i][j-1],stTable[i+(1<<j-1)][j-1]);        }    }}int query_max(int l,int r){    int len=r-l+1,k=preLog2[len];    return max(stTable[l][k],stTable[r-(1<<k)+1][k]);}int check(int m){    int sum=0,len=floor(n/m);    for(int i=0;i+len-1<len*m;i+=len)    {          sum+=query_max(i,i+len-1);          if(sum>k) return 1;    }    return 0;}int main(){    while(scanf("%d%d",&n,&k)!=EOF)    {        if(n<0||k<0) break;        for(int i=0; i<n; i++) scanf("%d",&a[i]);        st_prepare(n,a);        int l=1,r=n,ans=-1;        while(l<=r)        {            int mid=(l+r)/2;            if(check(mid))            {                ans=mid;                r=mid-1;            }            else l=mid+1;        }        if(ans==-1) printf("-1/n");        else printf("%d/n",ans);    }    return 0;}


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 罗甸县| 广昌县| 台州市| 桐梓县| 师宗县| 哈密市| 托克逊县| 阿勒泰市| 会泽县| 新宁县| 绿春县| 雷波县| 安化县| 英超| 常熟市| 务川| 南丹县| 金华市| 深水埗区| 米林县| 清丰县| 望都县| 德庆县| 迭部县| 牡丹江市| 万荣县| 遂昌县| 山东省| 西乡县| 伊吾县| 称多县| 富民县| 清镇市| 武夷山市| 崇州市| 都江堰市| 抚远县| 若尔盖县| 石楼县| 邵阳县| 历史|