清橙A1202&Bzoj2201:彩色圆环
因为Bzoj是权限题,所以可以去清橙做一下
Sol
突然考了一道这样的题,考场上强行\(yy\)出来了
win下评测Long double爆零TAT
首先肯定是破环为链变成序列问题辣
那么就要求第一个的颜色和最后的颜色不同
怎么统计,枚举前面有多长和右面有多长长度相等
中间的强制第一个与枚举的前面不同,以及最后一个与枚举的后面(就是前面)不同
合起来就是答案
考虑中间的怎么算
设\(f[0/1][i]\)表示到第\(i\)个位置,颜色与枚举的前面相同(\(1\)),不同(\(0\))的期望得分
转移:枚举小于\(i\)的\(j\)转移过来
\(f[1][i]+=f[0][j]*(i-j)*(\frac{1}{m})^{(i-j)}\)
\(f[0][i]+=f[0][j]*(i-j)*(m-2)*(\frac{1}{m})^{(i-j)}\)
\(f[0][i]+=f[1][j]*(i-j)*(m-1)*(\frac{1}{m})^{(i-j)}\)
# include <bits/stdc++.h>
# define RG register
# define IL inline
# define Fill(a, b) memset(a, b, sizeof(a))
using namespace std;
typedef long long ll;
IL int Input(){
RG int x = 0, z = 1; RG char c = getchar();
for(; c < '0' || c > '9'; c = getchar()) z = c == '-' ? -1 : 1;
for(; c >= '0' && c <= '9'; c = getchar()) x = (x << 1) + (x << 3) + (c ^ 48);
return x * z;
}
int n;
long double ans, f[2][205], dv[205], m;
int main(RG int argc, RG char* argv[]){
n = Input(), m = Input(), dv[0] = 1;
for(RG int i = 1; i <= n; ++i) dv[i] = dv[i - 1] / m;
f[1][0] = 1;
for(RG int i = 1; i <= n; ++i)
for(RG int j = 0; j < i; ++j){
f[1][i] += f[0][j] * (i - j) * dv[i - j];
f[0][i] += f[0][j] * (i - j) * (m - 2) * dv[i - j];
f[0][i] += f[1][j] * (i - j) * (m - 1) * dv[i - j];
}
ans = 1.0 * n * m * dv[n];
for(RG int i = 1; i < n; ++i)
for(RG int j = 0; j + i < n; ++j)
ans += 1.0 * (j + i) * m * dv[j + i] * f[0][n - j - i];
printf("%.10Lf\n", ans);
return 0;
}
清橙A1202&Bzoj2201:彩色圆环的更多相关文章
- 从《彩色圆环》一题探讨一类环上dp的解法
清橙A1202 bzoj2201 bsoj4074 试题来源 2010中国国家集训队命题答辩 问题描述 小A喜欢收集宝物.一天他得到了一个圆环,圆环上有N颗彩色宝石,闪闪发光.小A很爱惜这个圆环,天天 ...
- 清橙A1212:剪枝
题面 清橙 Sol 一种新的树上\(DP\)姿势 从左往右按链\(DP\) 做法: 维护两个栈\(S1\),\(S2\) \(S1\)存当前的链 \(S2\)存分叉点以下要改的链 \(Dfs\),弄一 ...
- [清橙A1210]光棱坦克
[清橙A1210]光棱坦克 题目大意: 平面上放置了\(n(n\le7000)\)个反射装置,光纤将从某个装置出发,在经过一处装置时发生反射,若经过的装置坐标依次为\((x_1,y_1),(x_2,y ...
- 清橙A1206.小Z的袜子 && CF 86D(莫队两题)
清橙A1206.小Z的袜子 && CF 86D(莫队两题) 在网上看了一些别人写的关于莫队算法的介绍,我认为,莫队与其说是一种算法,不如说是一种思想,他通过先分块再排序来优化离线查询问 ...
- 洛谷 P1903 BZOJ 2120 清橙 A1274【模板】分块/带修改莫队(数颜色)(周奕超)
试题来源 2011中国国家集训队命题答辩 题目描述 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会像你发布如下指令: 1. Q L R代表询问你从第L支画笔 ...
- [期望DP][纪中]【2010集训队出题】彩色圆环
彩色圆环 感谢名单 十分感谢 JA_Ma 为我讲解了 \(T1\) 的 期望DP 的思想和推论. 十分感谢 SSL_LYF 为我解答了 \(T1\) 的 期望DP 的概率的大小问题. 十分感谢 SSL ...
- Android自定义View——彩色圆环统计图
1.初始化变量 圆的粗细:圆环的大小. 标注:文字前面的圆点. 分配比例大小:由于需要计算圆环扫过的角度,计算方法使用:(比例/100)*360度,用百分比算出360度占用了多少,由于比例/100 ...
- 清橙 A1206 小Z的袜子(莫队算法)
A1206. 小Z的袜子 时间限制:1.0s 内存限制:512.0MB 总提交次数:1357 AC次数:406 平均分:46.75 将本题分享到: 查看未格式化的试题 ...
- 清橙A1363. 水位 - 清华大学2012年信息学优秀高中学子夏令营
问题描述 有一个正方形的地区,该地区特点鲜明:如果把它等分为N×N个小正方形格子的话,在每个格子内的任意地点的地表高度是相同的,并且是一个0到M之间的整数.正方形地区的外部被无限高的边界包围. 该地区 ...
随机推荐
- PHPUnit-附录 C. XML 配置文件
[http://www.phpunit.cn/manual/5.7/zh_cn/appendixes.configuration.html] PHPUnit <phpunit> 元素的属性 ...
- 使用scp从远程服务器下载文件到本地
[下载远程文件到本地] scp -P 6008 root@192.168.1.123:/usr/data/1.zip /Users/abc/www [上传本地文件到远程] scp -P 6008 ...
- Mybatis使用总结-思维导图
目前使用到Mybatis的总结,缓存还未涉及:
- 使用mybatis插入自增主键ID的数据后返回自增的ID
在开发中碰到用户注册的功能需要用到用户ID,但是用户ID是数据库自增生成的,这种情况上网查询后使用下面的方式配置mybatis的insert语句可以解决: <insert id="in ...
- npm注意事项(附带Vue-cli安装)
下载完nodeJS后,可选择更改配置目录 1.npm config set prefix "D:\node\node-global"<!--配置全局安装目录--> 2. ...
- C语言链表的建立、插入和删除
先看下向链表中插入节点 下面这个是删除链表节点
- Yii2-admin的详细使用教程
Yii2-admin的详细使用教程 参考:http://www.yiichina.com/tutorial/571 http://www.kancloud.cn/curder/yii/24775 ...
- Centos下Sphinx的下载与编译安装
官方下载地址 http://sphinxsearch.com/downloads/release/ 百度云下载地址 https://pan.baidu.com/s/1gfmPbd5 wget ...
- xpadder教程:自定义设置游戏手柄的图片
关于xpadder设置按键的教程,网上已经很多,我就不凑这个热闹了.这里介绍的是如何自定义设置手柄的图片,就是按钮的背景图,如下图所示: 步骤: 1)准备一张背景图 注意:格式必须是24位色的BMP位 ...
- python开发【第一篇】
内容编码 python解释器在加载.py文件的时候,会对内容进行编码(默认是ascii编码). ASCII 是基于拉丁系统的一套电脑编码系统, 主要用于显示现代英语和其他西欧语言,其最多只能用8位来表 ...