Codeforces Round #341 (Div. 2) C - Wet Shark and Flowers 数学期望
来源:互联网 发布:安卓麻将游戏源码 编辑:程序博客网 时间:2024/06/04 18:34
http://codeforces.com/contest/621/problem/C:
There are n sharks who grow flowers for Wet Shark. They are all sitting around the table, such that sharksi and i + 1 are neighbours for alli from 1 to n - 1. Sharks n and 1 are neighbours too.
Each shark will grow some number of flowers si. Fori-th shark value si is random integer equiprobably chosen in range fromli tori. Wet Shark has it's favourite prime numberp, and he really likes it! If for any pair ofneighbouring sharks i and j the product si·sj is divisible byp, then Wet Shark becomes happy and gives 1000 dollars to each of these sharks.
At the end of the day sharks sum all the money Wet Shark granted to them. Find the expectation of this value.
The first line of the input contains two space-separated integers n and p (3 ≤ n ≤ 100 000, 2 ≤ p ≤ 109) — the number of sharks and Wet Shark's favourite prime number. It is guaranteed thatp is prime.
The i-th of the following n lines contains information about i-th shark — two space-separated integersli andri (1 ≤ li ≤ ri ≤ 109), the range of flowers shark i can produce. Remember thatsi is chosen equiprobably among all integers fromli tori, inclusive.
Print a single real number — the expected number of dollars that the sharks receive in total. You answer will be considered correct if its absolute or relative error does not exceed10 - 6.
Namely: let's assume that your answer is a, and the answer of the jury isb. The checker program will consider your answer correct, if.
3 21 2420 421420420 420421
4500.0
3 51 42 311 14
0.0
蛙泳50米纪念= =
第一次做数学期望:
#include<cstdio> using namespace std;double p[100000];int main(){ int n,prime,l,r; double res=0; scanf("%d%d",&n,&prime); for(int i=0;i<n;i++){ scanf("%d%d",&l,&r); int tmp; tmp=r/prime-l/prime;//tmp是l和r之间可以被tmp整除的数的数量 if(l%prime==0) tmp++; p[i]=1-(double)(tmp)/(r-l+1);//p[i]是不可以被整除的概率 } for(int i=0;i<n-1;i++){ res+=(1-p[i]*p[i+1])*2000; } res+=(1-p[0]*p[n-1])*2000; printf("%.6f\n",res); return 0;}
- Codeforces Round #341 (Div. 2)C. Wet Shark and Flowers(数学期望)
- Codeforces Round #341 (Div. 2) C - Wet Shark and Flowers 数学期望
- Codeforces Round #341 (Div. 2) C. Wet Shark and Flowers (期望)
- Codeforces Round #341 (Div. 2) C. Wet Shark and Flowers(期望)
- Codeforces Round #341 (Div. 2) C Wet Shark and Flowers - 期望与概率
- Codeforces Round #341 (Div. 2) C. Wet Shark and Flowers
- Codeforces Round #341 (Div. 2)--C. Wet Shark and Flowers
- Codeforces Round #341 (Div. 2)C. Wet Shark and Flowers
- Codeforces Round #341 (Div. 2)-C. Wet Shark and Flowers
- Codeforces Round #341 (Div. 2)-C. Wet Shark and Flowers(区间概率)
- Codeforces Round #341 (Div. 2) C. Wet Shark and Flowers(简单容斥)
- Codeforces 621C Wet Shark and Flowers 【期望】
- 【概率与期望】[CodeForces - 621C]Wet Shark and Flowers
- CodeForces 621 C. Wet Shark and Flowers(期望)
- Codeforces Round #341 (Div. 2) E. Wet Shark and Blocks
- Codeforces Round #341 (Div. 2) B. Wet Shark and Bishops
- Codeforces Round #341 (Div. 2) --B. Wet Shark and Bishops
- Codeforces Round #341 (Div. 2) B. Wet Shark and Bishops
- [2016腾讯暑期实习在线笔试题]最长回文字符串
- 访问权限修饰符
- 什么是Docker
- 简单字符串匹配方法
- 成绩排序问题
- Codeforces Round #341 (Div. 2) C - Wet Shark and Flowers 数学期望
- RxAndroid使用入门记录
- HDU 1257 最少拦截系统
- Android APP开发需要的内容和优秀的开源网站
- poj1020(非常经典的dfs,易理解,难写代码)
- Java解析INI文件
- 关于memcpy和memmove的一点说明
- 【day0407 C++】文件流对象的应用
- laravel5.1下php artisan migrate使用注意事项