博彩游戏
From admin
背景 Background
Bob最近迷上了一个博彩游戏……
描述 Description
这个游戏的规则是这样的:
每花一块钱可以得到一个随机数R,花上N块钱就可以得到一个随机序列;
有M个序列,如果某个序列是产生的随机序列的子串,那么就中奖了,否则不中。
Bob会告诉你这M个序列,和身上有的钱的总数N,当然还有R的范围。
请你告诉Bob中奖的概率有多少?
输入格式 InputFormat
第一行三个用空格隔开的数N、M和R的范围R。
其中1<=R<=9,0<N<=60,0<M<=20000。
下面M行每行一个字符串(长度小于等于20),字符串的每一位范围在1-r之间
保证必要运算都在64位整型范围内。
输出格式 OutputFormat
一行一个实数,表示中奖的概率(保留小数点后5位小数)。
样例输入 SampleInput [复制数据]
5 1 3
 
 
 
样例输出 SampleOutput [复制数据]
0.86831
 
 
 
数据范围和注释 Hint
数据分布:
第1个点~第10个点,每个点5分;
第11个点~第15个点,每个点10分。

对于样例的解释:
随机序列一共有3^5=243个,其中包含"1"的个数为211个,则概率为211/243=0.86831

 
 
 
 
来源 Source
Bob HAN
题解:
这题和上一题差不多
代码 :
 var n,m,r,i,j,tot:longint;
ans1,ans2:int64;
a:array[..,..] of longint;
f:array[..,..] of int64;
fail,q:array[..] of longint;
flag:array[..] of boolean;
s:string;
procedure insert;
var i,now:longint;
begin
readln(s);now:=;
for i:= to length(s) do
begin
j:=ord(s[i])-ord('');
if a[now,j]= then begin inc(tot);a[now,j]:=tot;end;
now:=a[now,j];
end;
flag[now]:=true;
end;
procedure acmatch;
var h,t,i,now,k:longint;
begin
h:=;t:=;q[]:=;fail[]:=;
while h<t do
begin
inc(h);now:=q[h];
for i:= to r do
begin
if a[now,i]= then continue;
k:=fail[now];
while a[k,i]= do k:=fail[k];
fail[a[now,i]]:=a[k,i];
if flag[a[k,i]] then flag[a[now,i]]:=true;
inc(t);q[t]:=a[now,i];
end;
end;
end;
procedure init;
begin
tot:=;
readln(n,m,r);
for i:= to r do a[,i]:=;
for i:= to m do insert;
acmatch;
end;
procedure dp(x:longint);
var i,j,k:longint;
begin
for i:= to tot do
begin
if (flag[i]) or (f[x-,i]=) then continue;
for j:= to r do
begin
k:=i;
while a[k,j]= do k:=fail[k];
inc(f[x,a[k,j]],f[x-,i]);
end;
end;
end;
procedure main;
begin
ans2:=;
f[,]:=;
for i:= to n do ans2:=ans2*r;
for i:= to n do dp(i);
for i:= to tot do
if not(flag[i]) then inc(ans1,f[n,i]);
writeln((ans2-ans1)/ans2::);
end;
begin
assign(input,'input.txt');assign(output,'output.txt');
reset(input);rewrite(output);
init;
main;
close(input);close(output);
end.

tyvj1519博彩游戏的更多相关文章

  1. tyvj P1519 博彩游戏(AC自动机+DP滚动数组)

    P1519 博彩游戏 背景 Bob最近迷上了一个博彩游戏…… 描述 这个游戏的规则是这样的:每花一块钱可以得到一个随机数R,花上N块钱就可以得到一个随机序列:有M个序列,如果某个序列是产生的随机序列的 ...

  2. 博彩游戏(tyvj 1519)

    背景 Bob最近迷上了一个博彩游戏…… 描述 这个游戏的规则是这样的:每花一块钱可以得到一个随机数R,花上N块钱就可以得到一个随机序列:有M个序列,如果某个序列是产生的随机序列的子串,那么就中奖了,否 ...

  3. [JoyOI1519] 博彩游戏

    题目限制 时间限制 内存限制 评测方式 题目来源 1000ms 131072KiB 标准比较器 Local 题目背景 Bob最近迷上了一个博彩游戏…… 题目描述 这个游戏的规则是这样的:每花一块钱可以 ...

  4. [TyvjP1519] 博彩游戏(AC自动机 + DP)

    传送门 和bzoj1030一个德性 #include <queue> #include <cstdio> #include <cstring> #define N ...

  5. EOS博彩合约设计

    集中博彩游戏合约设计 一.功能接口 1. 质押deposit 由用户发起,用户将个人账户中token质押给平台,从而可以进入平台去参与平台活动. 2. 赎回withdraw 由用户发起,在用户结束平台 ...

  6. h5博彩webapp项目实例|h5棋牌游戏|h5博彩app案例

    html5实现的博彩webapp.h5棋牌app实例,运用h5+css3+zepto+jQ+swiper+layer等技术进行布控开发,750px最大宽度适配手机端设备,采用flex+rem布局样式. ...

  7. cocos 水果机,老Tiger虎机流水灯,博彩大转盘效果

    原(http://www.cnblogs.com/zisou/p/cocos2d-xZhuanpan.html) 博彩大转盘,转盘抽奖的小系统,这是一个很有意思的游戏模块,游戏中增加这样一些趣味的小模 ...

  8. 【cocos2d-x 手游研发----博彩大转盘】

    博彩大转盘,转盘抽奖的小系统,这是一个很有意思的游戏模块,游戏中增加这样一些趣味的小模块,我会附上源码: 会增进玩家的粘性,每天都想来抽两把试试手气: 我做的这个是个矩形风格的转盘,不是那种圆形的转盘 ...

  9. 大型博彩公司招聘 .net,DB,tester,android

    大型博彩公司招聘 .net,DB,tester,android,ios等. 等拿完年终奖的朋友,可以先发简历给我,先面试,年后上班. emai:sjchen1203@126.com 要求: 1. 全职 ...

随机推荐

  1. uva401 - Palindromes结题报告

    题目地址 :  http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...

  2. (转)Qt Model/View 学习笔记 (七)——Delegate类

    Qt Model/View 学习笔记 (七) Delegate  类 概念 与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件.一般来讲, view负责把数据展示 给用户,也 ...

  3. VS2010中无法嵌入互操作类型“......”,请改用适用的接口的解决方法

  4. random note

    今天才慢慢意识到,什么才是学习,(以思考解决问题为驱动),埋头刷分只是方法,不是目的和原动力. 既然准备读研,就要慢慢去了解研究生的生活学习方式是什么样的,涉及到哪些方面. 读研之前要选好方向,但是现 ...

  5. github简单使用

    github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开.对于一般人来说公共仓库就已经足够了,而且我们也没多少代码来管理,O(∩_∩)O ...

  6. myeclipse2013 for linux及其破解补丁百度网盘下载

    FQ下载1.1G的东西不是开玩笑的,用GA下载了两回均失败,还是用了某某门在win下下载好的,来之不易,所以特意上传分享给大家,免得FQ.破解文件也一并附上: 注意:本人这个是在原文件基础上bzip2 ...

  7. 1071: [SCOI2007]组队 - BZOJ

    Description NBA每年都有球员选秀环节.通常用速度和身高两项数据来衡量一个篮球运动员的基本素质.假如一支球队里速度最慢的球员速度为minV,身高最矮的球员高度为minH,那么这支球队的所有 ...

  8. List<T> 排序

    List<T>的排序 List<DataPoint> dataPointsDataPints = ...; //按RegisterAddress升序排序 dataPointsD ...

  9. hdu 1028

    递推 #include<cstdio> #include<cstdlib> #include<cstring> #include<algorithm> ...

  10. [Akka]发送一条消息的内部流程

    本想通过了解一下Akka-actor工程中主要的类的概念,来看下Akka内部运作的机制.无奈里边的类的确太多,注释中对每个类的功能也没有足够的解释.所以还是通过debug的方式,找个入手点,看一下互相 ...