您的位置:首页 > 运维架构

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

2016-12-06 08:13 543 查看
老实说我感觉这个更加像递推。。而不是动态规划。

一开始对答案是很疑惑的,后来去问了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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐