zoukankan      html  css  js  c++  java
  • LightOJ

    题目大意:有一个生存游戏,里面t仅仅老虎,d仅仅鹿,另一个人,每天都要有两个生物碰面,如今有下面规则
    1.老虎和老虎碰面。两仅仅老虎就会同归于尽
    2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方
    3.人和鹿碰面。人能够选择吃或者不吃该鹿
    4.鹿和鹿碰面,相安无事
    问人存活下来的概率

    解题思路:自己想复杂了。用了二维的dp。。。


    看了别人的,发现根本不用dp,人生存下来的条件就是不被老虎吃掉,所以仅仅要全部的老虎都同归于尽了,人就能够生存下来了
    假设老虎的数量是奇数,那么人总有一天会被吃掉的
    假设老虎的数量是偶数,那就算一下全部老虎同归于尽的概率。这个概率就是人存活下来的概率了
    鹿能够忽略不计,刚開始还以为须要。。

    。在时间无限的情况下。老虎没死光的话,鹿总有一天是会被全部吃掉的

    #include<cstdio>
    #define maxn 1010
    double dp[maxn][maxn], ans;
    int n, t, d;
    void solve() {
        ans = 1.0;
        while(t) {
            ans *= 1.0 * (t - 1) / (t + 1); 
            t -= 2;
        }
    }
    
    int main() {
        int test, cas = 1;
        scanf("%d", &test);
        while(test--) {
            scanf("%d%d", &t, &d);
            printf("Case %d: ", cas++);
            if(t == 0) {
                printf("1.0000000
    ");
                continue;
            }
            if(t % 2) {
                printf("0.0000000
    ");
                continue;
            }
            solve();
            printf("%.7lf
    ", ans);
        }
        return 0;
    }
    
  • 相关阅读:
    double 和 int 同时存在时的运算
    快速排序
    案例:商品放大镜效果
    淘宝flexible.js源码分析
    案例:模态框拖拽
    Web APIs——BOM
    案例:获取URL参数数据
    案例:5秒之后自动跳转页面
    JS中this指针的指向
    按钮:点击发送短信按钮60秒内不能再次点击的功能
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/8732978.html
Copyright © 2011-2022 走看看