一个简单的打表问题

#include <bits/stdc++.h>

using namespace std;

int dp[100005];
int main()
{
    int t,a,b;
    cin>>t>>a>>b;
    if(t==0){
        cout<<"Bob"<<endl;
        return 0;
    }
    for(int i = 1;i<=a;i=i+2)
        dp[i] = 1;
    for(int i = a+1;i<=t;i++)
    {
        if(dp[i-1]==0)dp[i] = 1;
        else{
            for(int j = a+1;(j<=b+1)&&(i-j>=0);j++)
                if(dp[i-j]==0){
                    dp[i]=1;
                    break;
                }
        }
    }
    if(dp[t])cout<<"Alice"<<endl;
    else cout<<"Bob"<<endl;
    
    return 0;
}

全部评论
我打表只得了20分,你满分?
点赞 回复 分享
发布于 2018-09-24 10:58

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务