bzoj4393: [Usaco2015 Dec]Fruit Feast

題意:php

T,A,B。T是上限。A和B能夠隨意吃可是不能超過T。有一次將吃的東西/2的機會。而後能夠繼續吃,不能超過T。問最多能夠吃多少。git

=>咱們先處理不能/2能夠吃到哪些。而後弄個雙指針掃一掃就能夠了TATui

#include<cstdio>
#include<cstring>
#include<cctype>
#include<algorithm>
using namespace std;
#define rep(i,s,t) for(int i=s;i<=t;i++)
#define dwn(i,s,t) for(int i=s;i>=t;i--)
#define clr(x,c) memset(x,c,sizeof(x))
int read(){
    int x=0;char c=getchar();
    while(!isdigit(c)) c=getchar();
    while(isdigit(c)) x=x*10+c-'0',c=getchar();
    return x;
}
const int nmax=5e6+5;
const int inf=0x7f7f7f7f;
bool dp[nmax];int a[nmax];
int main(){
    int T=read(),A=read(),B=read();
    dp[0]=1;
    rep(i,A,T) dp[i]|=dp[i-A];
    rep(i,B,T) dp[i]|=dp[i-B];
    rep(i,0,T) if(dp[i]) dp[i/2]=1;
    rep(i,0,T) if(dp[i]) a[++a[0]]=i;
    int ans=0,l=1,r=a[0];
    while(l<=r){
        while(l<r&&a[r]+a[l]>T) --r;
        if(l==r) break;
        ans=max(ans,a[l]+a[r]);++l;
    }
    printf("%d\n",ans);return 0;
}

  

4393: [Usaco2015 Dec]Fruit Feast

Time Limit: 10 Sec  Memory Limit: 128 MB
Submit: 160  Solved: 99
[Submit][Status][Discuss]

Description

Bessie has broken into Farmer John's house again! She has discovered a pile of lemons and a pile of oranges in the kitchen (effectively an unlimited number of each), and she is determined to eat as much as possible.

Bessie has a maximum fullness of T (1≤T≤5,000,000). Eating an orange increases her fullness by A, and eating a lemon increases her fullness by B (1≤A,B≤T). Additionally, if she wants, Bessie can drink water at most one time, which will instantly decrease her fullness by half (and will round down).

Help Bessie determine the maximum fullness she can achieve!spa

 

奶牛Bessie潛入了農夫約翰的家,她發現這裏有無窮無盡的檸檬派和橘子派。指針

Bessie的飽脹值一開始是0,且上限是T,每一個檸檬派能夠提供A點飽脹值,每一個橘子派能夠提供B點飽脹值。blog

Bessie能夠不斷地吃東西,若是她的飽脹值沒有超出T的話。同時,Bessie有一次喝水的機會,喝完後,她的飽脹值將減小一半(往下取整)。three

請計算出Bessie的飽脹值最多能夠達到多少。ip

 

Input

The first (and only) line has three integers T, A, and B.get

Output

A single integer, representing the maximum fullness Bessie can achieve.string

Sample Input

8 5 6

Sample Output

8

HINT

 

Source

相關文章
相關標籤/搜索