NEFU 15 八阵图 (概率)

Click Here ~~

八阵图
Problem : 15
Time Limit : 1000ms
Memory Limit : 65536K
description
相传诸葛孔明御敌时以乱石堆成石阵,按遁甲分成生、伤、休、杜、景、死、惊、开八门,变化万端,可挡十万精兵。(见《三国演义》)。
现将诸葛亮的“八阵图”示意如下:

现在一般认为,八阵图就是一个巨大的迷宫。当某人陷入其中时,他可以从很多门中选择第i个门,经过ri天后即可以逃出八卦阵,也就是所谓的“生门”;也可能经过ri天后回到原处,也就是所谓的“死门”。如果你不识得八卦阵,你只有随机选择一个门;在八卦阵中,无法留下是否经过的标记,也就是说,你如果选择了“死门”回到原处,你还是只能随机选择一个门。
现在,富有冒险精神的你,携带了W天的粮食和水进入了诸葛亮的八卦阵。由于八卦阵变化多端,你不知道八卦阵的布置,你的运气平平(也就是你选择每个门的可能性相同),你能安全逃出八卦阵吗?
input
有多组测试数据,输入的第一行只有一个正整数T(1≤T≤100);
每组测试数据占三行,具有如下形式:
N r1 r2 rn
M rn+1 rn+m
W
其中N(0≤N≤1000)是生门的数目,M(0≤M≤1000)是死门的数目,W(0≤W≤10^9)是你携带了W天的粮食和水。ri(1≤i≤n+m, 0≤ri≤10,000)是生门或死门经过的天数。
所有的测试数据都是非负整数。
output
对于每组测试数据,输出”Alive”,如果你能在W天内走出八卦阵。否则,输出”Dead”。
注意:你走出八卦阵所需要的天数,是你随机选择后走出八卦阵所需要的天数的平均值。

sample_input
3
3 4 5 6
7 8 9 10 11 12 13 14
3
0
2 1 1
1
2 3 1
2 1 1
3

sample_output
Dead
Dead
Alive
hint
概率
source
湖大

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <queue>
#include <algorithm>
#include <set>
using namespace std;

#define MM(a) memset(a,0,sizeof(a))

typedef long long LL;
typedef unsigned long long ULL;
const int maxn = 3e3+5;
const int mod = 1e9+7;
const double eps = 1e-8;
const int INF = 0x3f3f3f3f;
LL gcd(LL a, LL b)
{
    if(b == 0)
        return a;
    return gcd(b, a%b);
}

int m[maxn], n[maxn];
int main()
{
    int T, N, W, M;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d", &N);
        int summ = 0, sumn = 0;
        for(int i=0; i<N; i++)
        {
            scanf("%d",&n[i]);
            sumn += n[i];
        }
        scanf("%d", &M);
        for(int i=0; i<M; i++)
        {
            scanf("%d",&m[i]);
            summ += m[i];
        }
        scanf("%d", &W);
        if(N == 0)
        {
            puts("Dead");
            continue;
        }
        int ave = (sumn+summ)/N;
        if(ave <= W)
            puts("Alive");
        else
            puts("Dead");
    }
    return 0;
}
时间: 2024-12-27 04:36:07

NEFU 15 八阵图 (概率)的相关文章

Java抽奖算法第二例_java

本文实例为大家分享了java抽奖算法,供大家参考,具体内容如下 1. 算法分析 根据概率将奖品划分区间,每个区间代表一个奖品,然后抽取随机数,反查落在那个区间上,即为所抽取的奖品.  2. 代码核心算法  public class Arithmetic { // 放大倍数 private static final int mulriple = 1000000; public int pay(List<Prize> prizes) { int lastScope = 0; // 洗牌,打乱奖品次

《Arduino家居安全系统构建实战》——2.2 根据一个单词决定

2.2 根据一个单词决定 有了数据,我们就可以开始分析了.我们的最终目标是区分垃圾短信和非垃圾短信,但是和数字识别器的情况不同,我们还没有一组清晰的特征,唯一的材料是原始文本块--SMS本身.与此同时,人们会猜测文本中有许多信息可供利用.我们只需要找到一个途径,将这些字符串转换成可以使用的特征即可. 2.2.1 以单词作为线索 如果你仔细观察刚刚加载的数据集,就可能会注意到垃圾短信看起来和非垃圾短信有些不同.浏览这些短信,你的眼睛很容易找出某些值得警惕的线索,暗示着某一条短信可能是垃圾短信.举个

“Socket”发送数据的疑问?

问题描述 socket.Send(buf,buf.Length,SocketFlags.None);//发送1W字节(嵌入式PC)socket.Receive(buf,100000,SocketFlags.None);//接收10W字节(PC)问题一:这里发送了1W字节,但是接收时候,虽然是接收10W字节.但是,第一次接收,缺只接收了4000字节,是因为客户端的问题,数据是分几次发送过来的吗???(这里是嵌入式PC上运行的时候,如果是PC的话,发送多少,一次就可以接收多少.)问题二:是不是应该给

轻资产科技公司:高ROE与现金流或为成功标准

美国社交网站Facebook的上市,引爆了市场对轻资产类公司估值的争论. 相比另一互联网巨头谷歌当年上市首日大涨18%的成绩,挂牌后Facebook股价却连续下跌,近1000亿美元的挂牌市值,上市几天之后,市值蒸发近200亿美元. 所谓"轻资产",相对于"重资产"而言,有人总结为,其公司的竞争力主要来自于无形资产,比如品牌.客户关系.管理等.对于类似Facebook这样典型的轻资产类公司估值,什么样的方法比较合理?易凯资本CEO王冉在其博客中认为,如果你相信它会和苹

第15章 XSL格式化对象

对象 XML教程<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />  可扩展的样式语言(Extensible Style Language,XSL)的第二部分是格式化语言.这是XML应用程序,用来描述如何将内容显示给读者.一般地说,样式单使用XSL转换语言,将XML文档转换成使用XSL格式化对象符号集的新的XML文档.当许多人希望Web浏览器将来的某一天能够了解如何直接显示

php中如何计算抽奖的概率

<?php //计算抽奖的概率 function get_rand($proArr) { $result = ''; $proSum = array_sum($proArr); foreach ($proArr as $key => $proCur) { $randNum = mt_rand(1, $proSum); if ($randNum <= $proCur) { $result = $key; break; } else { $proSum -= $proCur; } } uns

UVa 10169 Urn-ball Probabilities !:概率

10169 - Urn-ball Probabilities ! Time limit: 3.000 seconds http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=115&page=show_problem&problem=1110 看输出要求:The floating-point number indicates the probability that you

python概率计算器实例分析

 这篇文章主要介绍了python概率计算器实现方法,实例分析了Python实现概率计算的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了python概率计算器实现方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 from random import randrange #randrange form ra

PHP中奖概率的抽奖算法程序代码

 初期就这些需求,然后根据网上的资料,采用了一种阶段式抽取的方法,大家下面看一下整体的程序: 该程序是在ThinkPHP框架下完成的,使用了一些框架自带的类库和函数,下面我会逐一进行说明,控制器部分   抽奖算法需要满足的需求如下: 1.可以控制中奖的概率 2.具有随机性 3.最好可以控制奖品的数量 4.根据用户ID或者ip.手机号.QQ号等条件限制抽奖次数 初期就这些需求,然后根据网上的资料,采用了一种阶段式抽取的方法,大家下面看一下整体的程序: 该程序是在ThinkPHP框架下完成的,使用了