题目链接:https://vjudge.net/problem/HDU-6656

题解:

维护一个前缀sum[i] : 从1到 i 的期望

第 i 到达 i + 1是:ai + (1 - r[i] / s[i])*(sum[i] - sum[x[i]]  +  E) = E

所以:E = (s[i] * ai + (s[i]  - r[i] )* (sum[i] - sum[x[i]])) / r[i]

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 500100;
const ll mod = 1e9 + 7;
ll r[N], s[N], x[N], a[N];
ll sum[N], dp[N];
int n, q;
ll ksm(ll x, ll y) {ll res = 1;while(y) {if(y & 1) res = res * x % mod;y >>= 1;x = x * x % mod;}return res;
}
int main() {int T;ll cnt;int pl, pr;scanf("%d", &T);while(T--) {scanf("%d %d", &n, &q);for(int i = 1; i <= n; i++) {scanf("%lld %lld %lld %lld", &r[i], &s[i], &x[i], &a[i]);cnt = sum[i] - sum[x[i]];dp[i + 1] = ((a[i] * s[i] % mod + s[i] * cnt % mod - r[i] * cnt % mod) % mod + mod) % mod * ksm(r[i], mod - 2) % mod;sum[i + 1] = (sum[i] + dp[i + 1]) % mod;}while(q--) {scanf("%d %d", &pl, &pr);printf("%lld\n", ((sum[pr] - sum[pl]) % mod + mod) % mod);}}return 0;
} 

2019杭电多校第七场 HDU - 6656 Kejin Player 期望相关推荐

  1. 2019杭电多校第七场 HDU - 6656 Kejin Player——概率期望

    题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...

  2. 2019杭电多校 第七场 Kejin Player 6656(求期望值)

    2019杭电多校 第七场 Kejin Player 6656(求期望值) 题目 http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意 给你n,q.表示有n ...

  3. 2019杭电多校第七场 Kejin Player HDU - 6656 (期望)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意:一种游戏,从i级升到i+1级,需要氪金a[i]RMB,有的概率成功,有1-的概率变成x[i ...

  4. 杭电多校第七场 1011 Kejin Player HDU(6656)

    杭电多校第七场 1011 Kejin Player 题意:给你N行,代表从i级有花费a[i]元的r[i]/s[i]的概率达到i+1级,剩下的概率中可能会到达x[i]级.然后询问从L级到R级的花费会是多 ...

  5. 2019杭电多校第9场1002 Rikka with Cake HDU6681

    2019杭电多校第9场1002 Rikka with Cake HDU6681 题意:给你若干个点按上下左右切割平面,最后问平面内有几块被切割开来. 解法1:红黑树+思维+贪心 A:根据欧拉定理可以得 ...

  6. 【2019.08.21】2019杭电多校第十场

    补题地址:http://acm.hdu.edu.cn/listproblem.php?vol=58 题号:6691-6701 1001: 1002: 1003:✅ 1004: 1005:✅ 1006: ...

  7. 2019 杭电多校第六场 题解

    比赛记录 注意随机数据 ,1-n排列这种,一般都有啥暴力重构之类的方法,期望重构次数很少之类的 1005也是这样,因为n^2但只有n个值有数,所以就可以n^2logn 题解 1001 Salty Fi ...

  8. 2019杭电多校第三场 6608 Fansblog(威尔逊定理+miller_rabin素性测试)

    Problem Description 传送门 Farmer John keeps a website called 'FansBlog' .Everyday , there are many peo ...

  9. 2019 杭电 多校第3场 1006 Fansblog (HDU 6608)

    题目链接 题解: 用威尔逊定理变换,然后求逆元. 代码: #include <bits/stdc++.h> using namespace std; typedef long long l ...

最新文章

  1. Keep the Customer Satisfied
  2. 设计模式四:简单工厂
  3. 如何避免订单重复支付?
  4. Html5+razor+jqmobile尝鲜
  5. SAP簇表BSEG取数优化的方法
  6. 銷售訂單 (Sales Order): 資料表及更新記錄
  7. 计算机科学与技术专业的课程体系,基于业务的计算机科学与技术专业课程体系...
  8. 【渝粤教育】电大中专药物化学基础_1作业 题库
  9. antd vue form 手动校验_参与《开课吧》vue训练营笔记(Day1)
  10. iOS开发-Get请求,Post请求,同步请求和异步请求
  11. 信息学奥赛C++语言: 求和
  12. 【Linux】Linux测试磁盘 IO 性能
  13. CentOS 7 Docker部署phpMyAdmin网站
  14. 文字描边加粗_这些PPT描边字,效果好到没朋友~
  15. 文件与base64的互相转换操作
  16. php 跨域提交,php实现跨域提交form表单的方法
  17. uniapp安卓上传图片有时候会自动旋转问题解决
  18. HDU-6638 Snowy Smile 区间最大子段和
  19. java for 代表什么意思_for(int a:i)在java 编程中是什么意思
  20. 云上全流程透明性备品备件协同管理

热门文章

  1. 大专考试计算机英语题目,专科英语入学考试题
  2. Linux下的流量控制(TC)和服务质量(QoS)
  3. 多重纹理——像素着色器
  4. 讲一点点自动驾驶技术(1)概论
  5. 常州网站服务器_常州云主机
  6. oracle linux 5.8 更新,Oracle Linux迎来UEK R5U5企业内核更新
  7. alpha和color key
  8. 吹牛前请看这篇:“智能”物流 VS “智慧”物流
  9. 电商Banner设计背后的12个人性的秘密
  10. C# 文件直接打印功能