2019杭电多校第七场 HDU - 6656 Kejin Player 期望
题目链接: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 期望相关推荐
- 2019杭电多校第七场 HDU - 6656 Kejin Player——概率期望
题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...
- 2019杭电多校 第七场 Kejin Player 6656(求期望值)
2019杭电多校 第七场 Kejin Player 6656(求期望值) 题目 http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意 给你n,q.表示有n ...
- 2019杭电多校第七场 Kejin Player HDU - 6656 (期望)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意:一种游戏,从i级升到i+1级,需要氪金a[i]RMB,有的概率成功,有1-的概率变成x[i ...
- 杭电多校第七场 1011 Kejin Player HDU(6656)
杭电多校第七场 1011 Kejin Player 题意:给你N行,代表从i级有花费a[i]元的r[i]/s[i]的概率达到i+1级,剩下的概率中可能会到达x[i]级.然后询问从L级到R级的花费会是多 ...
- 2019杭电多校第9场1002 Rikka with Cake HDU6681
2019杭电多校第9场1002 Rikka with Cake HDU6681 题意:给你若干个点按上下左右切割平面,最后问平面内有几块被切割开来. 解法1:红黑树+思维+贪心 A:根据欧拉定理可以得 ...
- 【2019.08.21】2019杭电多校第十场
补题地址:http://acm.hdu.edu.cn/listproblem.php?vol=58 题号:6691-6701 1001: 1002: 1003:✅ 1004: 1005:✅ 1006: ...
- 2019 杭电多校第六场 题解
比赛记录 注意随机数据 ,1-n排列这种,一般都有啥暴力重构之类的方法,期望重构次数很少之类的 1005也是这样,因为n^2但只有n个值有数,所以就可以n^2logn 题解 1001 Salty Fi ...
- 2019杭电多校第三场 6608 Fansblog(威尔逊定理+miller_rabin素性测试)
Problem Description 传送门 Farmer John keeps a website called 'FansBlog' .Everyday , there are many peo ...
- 2019 杭电 多校第3场 1006 Fansblog (HDU 6608)
题目链接 题解: 用威尔逊定理变换,然后求逆元. 代码: #include <bits/stdc++.h> using namespace std; typedef long long l ...
最新文章
- Keep the Customer Satisfied
- 设计模式四:简单工厂
- 如何避免订单重复支付?
- Html5+razor+jqmobile尝鲜
- SAP簇表BSEG取数优化的方法
- 銷售訂單 (Sales Order): 資料表及更新記錄
- 计算机科学与技术专业的课程体系,基于业务的计算机科学与技术专业课程体系...
- 【渝粤教育】电大中专药物化学基础_1作业 题库
- antd vue form 手动校验_参与《开课吧》vue训练营笔记(Day1)
- iOS开发-Get请求,Post请求,同步请求和异步请求
- 信息学奥赛C++语言: 求和
- 【Linux】Linux测试磁盘 IO 性能
- CentOS 7 Docker部署phpMyAdmin网站
- 文字描边加粗_这些PPT描边字,效果好到没朋友~
- 文件与base64的互相转换操作
- php 跨域提交,php实现跨域提交form表单的方法
- uniapp安卓上传图片有时候会自动旋转问题解决
- HDU-6638 Snowy Smile 区间最大子段和
- java for 代表什么意思_for(int a:i)在java 编程中是什么意思
- 云上全流程透明性备品备件协同管理