100道动态规划——17 UVA 10934 Dropping water balloons 猜数问题

来源:互联网 发布:腾讯高级php面试题 编辑:程序博客网 时间:2024/06/07 04:01

老实说我感觉这个更加像递推。。而不是动态规划。

一开始对答案是很疑惑的,后来去问了dalao,dalao告诉我这是猜数问题,于是我就找关于猜数问题的资料看,发现他们本质是确实是同一个问题。

这里把链接放出来:http://wenku.baidu.com/link?url=fpTY4pNQy0seexyQQbA2dnMUj-_DewqBq2ndP5o8oqVYsRkFf3krlBNon2rlRaAU2UtNlLANzKNNfEY4cy1rlGCynR9FdAziAG1QMIn_3U_

(龙凡《一类猜数问题的研究》)

看了这个资料之后再回来看这一道题目就会自然很多了。

AC代码的话,知道怎么写了,还是很好写的。

#include <iostream>#include <cstring>#include <algorithm>using namespace std;using ll=unsigned long long;ll k,n,dp[110][70];int main(){    ios_base::sync_with_stdio(false);    while(cin>>k>>n&&k){        for(int i=1;i<=k;++i)        for(int j=1;j<=63;++j)            dp[i][j]=dp[i-1][j-1]+dp[i][j-1]+1;        if(dp[k][63]<n)            cout<<("More than 63 trials needed.\n");        else{            for(int i=1;i<=63;++i)            if(dp[k][i]>=n)                cout<<i<<endl,i=63;        }    }    return 0;}

1 0
原创粉丝点击