HDU 6656 Kejin Player
- Time limit 5000 ms
- Memory limit 524288 kB
- OS Windows
解题思路
因为升级只能一级一级地升,所以所求期望满足了区间加的性质,可以一级一级地算,然后求前缀和、输出(状态不好,临博客涕零,不知所言)
接着扔链接(留坑)
- 这篇博客推公式的时候好像有些地方下标有点错,而且推公式的过程省了不少(雾)https://blog.csdn.net/toohandsomeIeaseId/article/details/99357608
- 这篇推公式的方向对我来说好新颖,进行非整数次的氪金,这样就不用死磕无穷级数了……(我的猴子排序那篇也可以计算快点了)https://blog.csdn.net/qq_41785863/article/details/99347386
源代码
参考别人博客写的,感觉像抄的一样
#include<stdio.h>
const int mod=1e9+7;
const int MAXN=5e5+5;
int T;
int n,m;
long long inv(long long x)//快速幂求逆元 inv[a]=a^(p-2)
{
long long res=1LL;
long long b=mod-2;
while(b){
if(b&1) res=res*x%mod;
x*=x;
x%=mod;
b>>=1;
}
return res%mod;
}
long long sum[MAXN];
int main()
{
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
sum[0] = 0;
for(int i = 1; i <= n; ++i)
{
long long r, s, x, a;
scanf("%lld%lld%lld%lld", &r, &s, &x, &a);
long long p = r * inv(s) % mod;
sum[i] = (sum[i - 1] + (a + (1 - p + mod) % mod * (a + sum[i - 1] - sum[x - 1] + mod) % mod * inv(p) % mod) % mod + mod) % mod;//关键就是这个了
}
while(m--)
{
int l, r;
scanf("%d%d", &l, &r);
long long ans = (sum[r - 1] - sum[l - 1] + mod) % mod;//这里为啥来着……
printf("%lld\n", ans);
}
}
return 0;
}
HDU 6656 Kejin Player的更多相关文章
- HDU 6656 Kejin Player (期望DP 逆元)
2019 杭电多校 7 1011 题目链接:HDU 6656 比赛链接:2019 Multi-University Training Contest 7 Problem Description Cub ...
- 2019杭电多校第七场 HDU - 6656 Kejin Player——概率&&期望
题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...
- 杭电多校HDU 6656 Kejin Player(概率DP)题解
题意: 最低等级\(level\ 1\),已知在\(level\ i\)操作一次需花费\(a_i\),有概率\(p_i\)升级到\(level\ i+1\),有\(1 - p_i\)掉级到\(x_i( ...
- 2019 Multi-University Training Contest 7 Kejin Player Final Exam
Kejin Player 期望DP 题意: 初始等级为1,每一级有四个参数 r , s , x , a . 每一级有一个概率p=r/s花费a的代价升级到下一级,失败可能会倒退到x级 设从 l 到 r ...
- 2019HDU多校第七场 HDU6656 Kejin Player H 【期望递归】
一.题目 Kejin Player H 二.分析 因为在当前等级$i$,如果升级失败可能会退回到原来的某一等级$x$,相当于就是失败的期望就是$E + (Sum[i-1] - Sum[x-1]) + ...
- 升级降级(期望DP)2019 Multi-University Training Contest 7 hdu杭电多校第7场(Kejin Player)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意: 有 1~n 个等级,你现在是1级,求升到n级的花费期望.会给你n个条件(i~i+1级升级 ...
- hdu多校第七场 1011 (hdu6656) Kejin Player 概率dp
题意: 一个游戏,有许多关,到下一关要花费金钱,做出尝试,有概率成功,若成功则到达下一关,若失败则停在此关或退回到前面某关,询问第l关到第r关的期望费用 题解: 显然,第r关到第l关的费用是dp[r] ...
- [2019杭电多校第七场][hdu6656]Kejin Player
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意为从i级花费a元有p的概率升到i+1级,有1-p的概率降到x级(x<i),查询从L级升 ...
- 【HDOJ6656】Kejin Player(期望DP)
题意:玩一个共有n级的游戏,i级出发每次可以花a[i]的代价,有p[i]的几率变成i+1级,有1-p[i]的几率变成x[i]级,x[i]<=i 多次询问,每次询问从l级升到r级的期望总代价 n, ...
随机推荐
- GitHub 上有哪些优秀的 Python 爬虫项目?
目录 GitHub 上有哪些优秀的 Python 爬虫项目? 大型爬虫项目: 实用型爬虫项目: 其它有趣的Python爬虫小项目: GitHub 上有哪些优秀的 Python 爬虫项目? 大型爬虫项目 ...
- python之self的理解
一.self的位置是出现在哪里? 首先,self是在类的方法中的,在调用此方法时,不用给self赋值,Python会自动给他赋值,而且这个值就是类的实例--对象本身.也可以将self换成别的叫法例如s ...
- VeryNginx中文文档
VeryNginx VeryNginx 是一个功能强大而对人类友好的 Nginx 扩展程序. 提示 v0.2` 版本之后,控制台入口被移动到了 `/verynginx/index.html 中文控制台 ...
- asp.net运行原理及机制
当一个HTTP请求到服务器并被IIS接收到之后,IIS首先通过客户端请求的页面类型为其加载相应的.dll文件,然后在处理过程中将这条请求发送给能够处理这个请求的模块.在ASP.NET 3.5中,这个模 ...
- wex5 如何利用 百度地图 定位 和 天气插件
引包: require("cordova!cordova-plugin-geolocation"); require("cordova!com.justep.cordov ...
- docker安装笔记
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相 ...
- HTML-复杂动画和变形
1.复杂动画 (1)涉及到的属性: animation-name:动画名称: animation-duration:单次动画总时长: animation-timing-function:时间函数: a ...
- RGB颜色值转换成十六进制
function transferRgbToStr(color) { if (typeof color !== 'string' && !(color instanceof Strin ...
- ajax跨域jsonp —— javascript
目录 jsonp是什么 jsonp原理 原生js使用jsonp jquery使用jsonp jsonp是什么 jsonp作用:解决跨域问题 为什么有跨域问题? “同源策略限制了从同一个源加载的文档或脚 ...
- div悬浮在屏幕的中间及点击按钮关闭弹出框
#fd { position: fixed; z-index: 999; width: 109px; height: 323px; top: 71%; right: 1%; margin: -50px ...