FZU Problem 2132 LQX的作业

点击打开链接

题意:题目要求选择n个0~1之间的数拍完序之后第m个小于等于x的概率

思路:1~0直接选择一个数小于等于x的概率为x,那么选择i个数都小于等于x的概率为x^i。因此,要求第m个数小于等于x,我们可以知道m~n的数也有可能小于等于x,只要枚举m~n求和即可

代码:

#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;

int n , m;
double x;

double get(int a){
    double sum = 1;
	int j = n;
	for(int i = 1 ; i <= a ; i++ , j--)
	    sum *= j;
    for(int i = 1 ; i <= a ; i++)
		sum /= i;
	return sum;
}

double solve(){
    double ans = 0;
	for(int i = m ; i <= n ; i++)
        ans += get(i)*pow(x,i)*pow(1-x,n-i);
	return ans;
}

int main(){
    int cas;
	scanf("%d" , &cas);
	while(cas--){
		scanf("%d%d%lf" , &n , &m , &x);
		printf("%.4lf\n" , solve());
	}
	return 0;
}
时间: 2024-10-03 05:52:33

FZU Problem 2132 LQX的作业的相关文章

FZU Problem 2137 奇异字符串

点击打开链接 题意:给定一个长度为n的字符串,要求这个字符串的所有子串的价值总和 思路:题意的奇异串是AxA,就是x旁边两个串是要一样的,不是相反的.注意x不能在A中出现,根据这个,A的范围只可能在x与上一个字母x之间,可以直接枚举.那么我们可以枚举这个字符串的每一个字母为x,然后往两边扩展去判断.判断的过程利用hash,注意hash函数的使用.使用unsigned long long,这样爆了unsigned long long后就相等于取模 代码: #include<cstdio> #in

FZU 1692 Key problem

点击打开FZU 1692 思路: 构造矩阵+矩阵快速幂 分析: 1 题目的意思是有n个人构成一个圈,每个人初始的有ai个苹果,现在做m次的游戏,每一次游戏过后第i个人能够增加R*A(i+n-1)%n+L*A(i+1)%n 个苹果(题目有错),问m轮游戏过后每个人的苹果数 2 根据题目的意思我们能够列出一轮过后每个人的苹果数    a0 = a0+R*an-1+L*a1    a1 = a1+R*a0+L*a2    .............................    an-1 =

HDOJ(HDU) 2132 An easy problem

Problem Description We once did a lot of recursional problem . I think some of them is easy for you and some if hard for you. Now there is a very easy problem . I think you can AC it. We can define sum(n) as follow: if i can be divided exactly by 3 s

1086: 弟弟的作业

Description 你的弟弟刚做完了"100以内数的加减法"这部分的作业,请你帮他检查一下.每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数:c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算. Input 输入文件包含不超过100行,以文件结束符结尾.每行包含一道题目,格式保证符合上述规定,且不包含任何空白字符.输入的所有整数均不含前导0. Output 输出仅

《21天学通C语言(第6版•修订版)》一1.8 作业

1.8 作业 21天学通C语言(第6版•修订版) 下面的小测验帮助您巩固所学的知识,练习则让您实际应用所学的知识.在阅读下一课时之前,应尽可能理解这些小测验和练习的答案,答案见附录F. 1.8.1 小测验 1.指出C是首选编程语言的三个原因. 2.编译器的功能是什么? 3.程序开发周期中包含哪些步骤? 4.使用您自己的编译器编译程序program1.c时,应执行什么命令? 5.在您的编译器中,完成编译和链接工作只需一个命令,还是需要分别执行命令? 6.C语言源代码文件应使用什么扩展名? 7.FI

FZU 1752 a^b%c

题目连接:http://acm.fzu.edu.cn/problem.php?pid=1752 解题思路:要用快速幂,但不是单纯的用,如果单纯的用的话就会爆掉,要把乘法转化为加法,然后再用而且尽量用位运算... 上代码: #include <iostream> #include <cstdio> using namespace std; typedef long long LL; LL multi(LL a, LL b, LL c) { LL ans=0; a=a%c; while

《系统分析师UML项目实战》—第1章1.1节现场的作业程序

第1章 UML项目现场系统分析师UML项目实战IKEA的创办人英格瓦·坎普拉(Ingvar Kamprad)常把"简单是一种美德"这句话挂在嘴边.他经常告诫大家:"只有平庸的人,才会提出复杂的解决方案." 同样地,在UML项目现场,保持简单使用UML也是一项值得赞许的美德.或许,我们真要借用坎普拉的话来提醒自己:"只有平庸的团队,才会把UML用得既复杂又困难." 因此,在UML项目现场,限制团队成员使用最少数量的UML概念和图标,告诫团队成员采用

c-编程作业排列4个数的大小

问题描述 编程作业排列4个数的大小 将4个变量(a, b, c, d)按照由小到大的顺序进行排列,排序结果中,a保存最小的数,d保存最大的数.请书写程序. 解决方案 我还是发给图片吧,你看看: 如果回答对您有帮助,请采纳 解决方案二: #include <stdlib.h> #include <stdio.h> int cmp ( const void *a , const void *b ) { return *(int *)a - *(int *)b; } int main()

Flink运行时之生成作业图

生成作业图 在分析完了流处理程序生成的流图(StreamGraph)以及批处理程序生成的优化后的计划(OptimizedPlan)之后,下一步就是生成它们面向Flink运行时执行引擎的共同抽象--作业图(JobGraph). 什么是作业图 作业图(JobGraph)是唯一被Flink的数据流引擎所识别的表述作业的数据结构,也正是这一共同的抽象体现了流处理和批处理在运行时的统一. 相比流图(StreamGraph)以及批处理优化计划(OptimizedPlan),JobGraph发生了一些变化,已