zoukankan      html  css  js  c++  java
  • UVA10934 Dropping water balloons

    Dropping water balloons

     https://odzkskevi.qnssl.com/0876833faf9646139e4e75ecade141db?v=1508497019

    【题解】

    太神辣。。。

    dp[i][j]表示用i个气球,j次试验所测试的楼的最大高度

    当我们已知dp[1~i][1~j]后,第一次试验,我们该把他放到什么高度放下去呢?

    放下去后,最坏情况下会破碎,我们应该把它放到最坏情况(k层)往上一层(k+1层),还得

    保证1~k层能算出来,破碎的球不能给我们提供任何有用的信息

    所以应该从k = dp[i-1][j-1] + 1层地方放

    因为最坏情况下,球会破碎,此时能确定的最大高度是dp[i - 1][j - 1]

    考虑了最坏情况,但状态表示的是“最大高度”,要考虑最优

    情况,即放下这个球之后,这个球没有破。此时我们还有i个球,

    j-1次试验机会,还能实验出dp[i][j-1]层楼

    于是dp[i][j] = dp[i - 1][j - 1] + 1 + dp[i][j - 1]

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstdlib>
     4 #include <cstring>
     5 #include <vector> 
     6 #define min(a, b) ((a) < (b) ? (a) : (b))
     7 #define max(a, b) ((a) > (b) ? (a) : (b))
     8 
     9 inline void swap(long long &a, long long &b)
    10 {
    11     long long tmp = a;a = b;b = tmp;
    12 }
    13 
    14 inline void read(long long &x)
    15 {
    16     x = 0;char ch = getchar(), c = ch;
    17     while(ch < '0' || ch > '9')c = ch, ch = getchar();
    18     while(ch <= '9' && ch >= '0')x = x * 10 + ch - '0', ch = getchar();
    19 }
    20 
    21 const long long INF = 0x3f3f3f3f;
    22 const long long MAXK = 100 + 10;
    23 
    24 long long dp[MAXK][MAXK], n, k;
    25 
    26 int main()
    27 {
    28     for(register long long i = 1;i <= 100;++ i)
    29         for(register long long j = 1;j <= 63;++ j)
    30             dp[i][j] = dp[i - 1][j - 1] + 1 + dp[i][j - 1];
    31     int ans;
    32     while(scanf("%lld%lld", &k, &n) != EOF && n && k)
    33     {
    34         ans = 0;
    35         for(;ans <= 63;++ ans)
    36             if(dp[k][ans] >= n)
    37                 break;
    38         if(ans > 63)printf("More than 63 trials needed.
    ");
    39         else printf("%d
    ", ans);
    40     }
    41     return 0;
    42 }
    UVA10934
  • 相关阅读:
    mysql内置函数
    phpmyadmin 安装
    java 命令行JDBC连接Mysql
    数据库工具
    java JDBC
    mysql 各种关系代数的使用
    恢复误删的DB table数据
    eclipse php pdt插件安装
    mysql通配符使用
    关系代数和sql语句对应关系
  • 原文地址:https://www.cnblogs.com/huibixiaoxing/p/7723605.html
Copyright © 2011-2022 走看看