bzoj 1962 硬币游戏 (猜数问题)

Posted Kaiser

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bzoj 1962 硬币游戏 (猜数问题)相关的知识,希望对你有一定的参考价值。

【bzoj1962】模型王子

Description

技术分享图片

Input

输入数据共一行,两个整数N,K,用一个空格隔开,具体意义如题目中所述。

Output

输出数据共一行,为最少所需要的时间S。

Sample Input

5 3

Sample Output

5

HINT

对于全部的数据,1 < = K < = 100,1 < = N < = 10^5

 

题解:

  https://wenku.baidu.com/view/62c94bf7ba0d4a7302763a23.html

 1 #include<cstring>
 2 #include<cmath>
 3 #include<algorithm>
 4 #include<iostream>
 5 #include<cstdio>
 6 
 7 
 8 using namespace std;
 9 inline int read()
10 {
11     int x=0,f=1;char ch=getchar();
12     while(ch>9||ch<0){if (ch==-) f=-1;ch=getchar();}
13     while(ch<=9&&ch>=0){x=(x<<3)+(x<<1)+ch-0;ch=getchar();}
14     return x*f;
15 }
16 
17 int n,k;
18 int f[100007][107];
19 
20 int main()
21 {
22     n=read(),k=read();
23     for (int i=2;;i++)
24     {
25         f[i][1]=i/2;
26         for (int j=2;j<=k;j++)
27             f[i][j]=max(f[i-1][j]+f[i-2][j-2],f[i-2][j]+f[i-1][j-1])+1;
28         if (f[i][k]>=n)
29         {
30             printf("%d\n",i);
31             return 0;
32         }    
33     }
34 }

 

以上是关于bzoj 1962 硬币游戏 (猜数问题)的主要内容,如果未能解决你的问题,请参考以下文章

BZOJ 2222: [Cqoi2006]猜数游戏神奇的做法,傻逼题,猜结论

bzoj 1594: [Usaco2008 Jan]猜数游戏——二分+线段树

[bzoj1594]猜数游戏

[BZOJ1594] [Usaco2008 Jan]猜数游戏(二分 + 并查集)

bzoj2017[Usaco2009 Nov]硬币游戏*

bzoj 1411 [ZJOI2009]硬币游戏