由于并不想写T1和T2的题解……所有只有T3的题解了。

T3

  由于内部题就只写题解了。

  

  好吧,我是一点都不想写……

  说一下这zz题解哪里写错了吧……

  ……不想写……

  就说一个吧……

  $n-\frac{k-i}{2}$应该是$\frac{k-i}{2}$。

  好累啊,完全不想写题解,有空再说吧。

 #include "bits/stdc++.h"

 using namespace std;

 const int N=4e2+;

 double f[N][N],p[N][N],C[N][N],mi[N][N];

 int n,num[N][N];
char s[N]; inline void init(){
int i,j,k;
for (C[][]=i=;i<N;++i)
for (C[i][]=j=;j<=i;++j)
C[i][j]=C[i-][j]+C[i-][j-];
for (i=;i<=n;++i)
for (j=i,k=;j<=n;++j){
if (s[j]=='.') ++k;
num[i][j]=k;
}
} inline void dp(){
if (!num[][n]){
puts("0.000000");return ;
}
register int i,j,k,l;
for (i=;i<=n;++i) if(s[i]=='.')
p[i][i]=1.0;
for (l=;l<=(n>>);++l) {
for (i=;i<=l;++i)
for (mi[i][]=,k=;k<=l;++k)
mi[i][k]=mi[i][k-]*i/l;
for (i=,j=l;i<=n;++i,++j) {
f[i][j]=p[i][j]=0.0;
if(s[j]=='.'){
for (k=i;k<j;++k) if(s[k]=='.'){
int lk=num[i][k-],rk=num[k+][j-];
double now=C[lk+rk][lk]*
mi[(k-i+)][lk+]*
mi[(j-k)][rk]*
p[i][k]*p[k+][j];
p[i][j]+=now;
f[i][j]+=now*(f[i][k]+f[k+][j]+(k-i)/2.0);
}
if (num[i][j-]==)p[i][j]=1.0;
f[i][j]/=p[i][j];
}
}
}
double ans=0.0;
for (i=;i<=n/;++i)
ans+=f[i][i+n/-]*p[i][i+n/-];
ans+=(n/-)/2.0;
printf("%.6f\n",ans);
} int main(){
int T;
scanf("%d",&T);
while (T--) {
scanf("%s",s+);
n=strlen(s+);
for (int i=n+;i<=(n<<);++i)
s[i]=s[i-n];
n<<=;
init();
dp();
}
}

T3

[NOI赛前训练]——专项测试3·数学的更多相关文章

  1. 【NOI赛前训练】——专项测试1·网络流

    T1: 题目大意: 传送门 给一个长度为$n(n<=200)$的数列$h$,再给$m$个可以无限使用的操作,第$i$个操作为给长度为花费$c_i$的价值给长度为$l_i$的数列子序列+1或-1, ...

  2. Ubuntu14.04+caffe+cuda7.5 环境搭建以及MNIST数据集的训练与测试

    Ubuntu14.04+caffe+cuda 环境搭建以及MNIST数据集的训练与测试 一.ubuntu14.04的安装: ubuntu的安装是一件十分简单的事情,这里给出一个参考教程: http:/ ...

  3. Caffe初试(二)windows下的cafee训练和测试mnist数据集

    一.mnist数据集 mnist是一个手写数字数据库,由Google实验室的Corinna Cortes和纽约大学柯朗研究院的Yann LeCun等人建立,它有60000个训练样本集和10000个测试 ...

  4. caffe学习系列(2):训练和测试自己的图片

    参考:http://www.cnblogs.com/denny402/p/5083300.html 上述主要介绍的是从自己的原始图片转为lmdb数据,再到训练.测试的整个流程(另外可参考薛开宇的笔记) ...

  5. windows+caffe(四)——创建模型并编写配置文件+训练和测试

    1.模型就用程序自带的caffenet模型,位置在 models/bvlc_reference_caffenet/文件夹下, 将需要的两个配置文件,复制到myfile文件夹内 2. 修改solver. ...

  6. Caffe学习系列(12):训练和测试自己的图片

    学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中.因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个流程. 一.准备数据 有条件的同学,可以去 ...

  7. 【转】微信小程序专项测试

    微信小程序专项测试 by 云层 原文地址: http://mp.weixin.qq.com/s?__biz=MzA4NDIzNTIzNA==&mid=2654370226&idx=1& ...

  8. 不要怂,就是GAN (生成式对抗网络) (四):训练和测试 GAN

    在 /home/your_name/TensorFlow/DCGAN/ 下新建文件 train.py,同时新建文件夹 logs 和文件夹 samples,前者用来保存训练过程中的日志和模型,后者用来保 ...

  9. app专项测试自动化测试方法思路与实现

    秉着个人意愿打算把python+rf接口自动进行彻底结束再做些其它方面的输出~但事与愿违,但领导目前注重先把专项测试方面完成,借此,先暂停python+rf(主要是与Jenkins集成+导入DB+微信 ...

随机推荐

  1. miniui几个常用知识点汇总

    1.在表格中去除系统自带的序列号,请看代码: function allAndBrief(id) { if(id==1){ grid.set({ columns: [ { type: "ind ...

  2. Ocelot中文文档-路由

    Ocelot的主要功能是接管进入的http请求并把它们转发给下游服务.目前是以另一个http请求的形式(将来可能是任何传输机制). Ocelot将路由一个请求到另一个请求描述为ReRoute.为了在O ...

  3. html5 标签在 IE 下使用

    (function(){if(!/*@cc_on!@*/0)return;var e = "abbr,article,aside,audio,bb,canvas,datagrid,datal ...

  4. Python3实现ICMP远控后门(上)_补充篇

    ICMP后门(上)补充篇 前言 在上一篇文章Python3实现ICMP远控后门(上)中,我简要讲解了ICMP协议,以及实现了一个简单的ping功能,在文章发表之后,后台很多朋友留言,说对校验和的计算不 ...

  5. 解决150%DPI下Photoshop不能显示成合适大小的问题

    Adobe官方这里一直不给力,只能靠自己动手了. 和解决CHM高分屏显示的步骤差不多: Ctril+R,输入regedit编辑注册表. 进入到 HKEY_LOCAL_MACHINE > SOFT ...

  6. linux基础-系统安装教程篇(centos6.5)

    一.linux系统简介: Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程 ...

  7. Java (六、String类和StringBuffer)

    Java String 类 字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 创建字符串 // ==比较的是字符串在栈中存放的 ...

  8. cw2vec理论及其实现

    导读 本文对AAAI 2018(Association for the Advancement of Artificial Intelligence 2018)高分录用的一篇中文词向量论文(cw2ve ...

  9. Visual Studio 201~ Code 格式检查

    前言 好的代码格式,有利于阅读和查错,慢慢的有利于养成良好的编码习惯,也可以帮我们找出一些低级错误. StyleCop 在Nuget上搜索stylecop,选择MSBuild的那个版本,安装. 手动编 ...

  10. android dp深度解析(转)

    我转载地方的连接:http://zhangkun716717-126-com.iteye.com/blog/1772696  当笔记记录一下 dip: device independent pixel ...