zoukankan      html  css  js  c++  java
  • BZOJ 3093: [Fdu校赛2012] A Famous Game

    3093: [Fdu校赛2012] A Famous Game

    Time Limit: 1 Sec  Memory Limit: 128 MB
    Submit: 248  Solved: 133
    [Submit][Status][Discuss]

    Description

    Mr. B and Mr. M like to play with balls. They have many balls colored in blue and red. Firstly, Mr. B randomly picks up N balls out of them and put them into a bag. Mr. M knows that there are N+1 possible situations in which the number of red balls is ranged from 0 to N, and we assume the possibilities of the N+1 situations are the same. But Mr. M does not know which situation occurs. Secondly, Mr. M picks up P balls out of the bag and examines them. There are Q red balls and P-Q blue balls. The question is: if he picks up one more ball out of the bag, what is the possibility that this ball is red?

    Input

    Each test case contains only one line with three integers N, P and Q (2 <= N <= 100,000, 0 <= P <= N-1, 0 <= Q <= P).

    Output

    For each test case, display a single line containing the case number and the possibility of the next ball Mr. M picks out is red. The number should be rounded to four decimal places.

    Sample Input

    3 0 0
    4 2 1

    Sample Output

    Case 1: 0.5000
    Case 2: 0.5000

    HINT

    [Explanation] 


    For example as the sample test one, there are three balls in the bag. The possibilities of the four possible situations are all 0.25. If there are no red balls in the bag, the possibility of the next ball are red is 0. If there is one red ball in the bag, the possibility is 1/3. If there are two red balls, the possibility is 2/3. Finally if all balls are red, the possibility is 1. So the answer is 0*(1/4)+(1/3)*(1/4)+(2/3)*(1/4)+1*(1/4)=0.5. 

    Source

    分析:

    代码:

    #include<algorithm>
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    //by NeighThorn
    using namespace std;
    
    int n,p,q,cas;
    
    signed main(void){
    	cas=0;
    	while(scanf("%d%d%d",&n,&p,&q)!=EOF)
    		printf("Case %d: %.4f
    ",++cas,1.0*(q+1)/(1.0*(p+2)));
    	return 0;
    }
    

      


    By NeighThorn

  • 相关阅读:
    systick运用
    stm32的systick原理与应用
    PID算法知识点博文收藏记录
    关于STM32驱动DS1302实时时钟的一点思考
    什么是同步?什么是互斥?
    C语言小笔记(1)
    typedef 复杂函数指针
    获取窗口句柄
    GetWindowRect和GetClientRect的区别详解
    RepositionBars的用法和参数的意义(引用别人的)
  • 原文地址:https://www.cnblogs.com/neighthorn/p/6440645.html
Copyright © 2011-2022 走看看