zoukankan      html  css  js  c++  java
  • CF802D

    D. Marmots (easy)
    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Heidi is a statistician to the core, and she likes to study the evolution of marmot populations in each of V(1 ≤ V ≤ 100) villages! So it comes that every spring, when Heidi sees the first snowdrops sprout in the meadows around her barn, she impatiently dons her snowshoes and sets out to the Alps, to welcome her friends the marmots to a new season of thrilling adventures.

    Arriving in a village, Heidi asks each and every marmot she comes across for the number of inhabitants of that village. This year, the marmots decide to play an April Fools' joke on Heidi. Instead of consistently providing the exact number of inhabitants P (10 ≤ P ≤ 1000) of the village, they respond with a random non-negative integer k, drawn from one of two types of probability distributions:

    • Poisson (d'avril) distribution: the probability of getting an answer k is  for k = 0, 1, 2, 3, ...,
    • Uniform distribution: the probability of getting an answer k is  for k = 0, 1, 2, ..., 2P.

    Heidi collects exactly 250 answers per village. Every village follows either the Poisson or the uniform distribution. Heidi cannot tell marmots apart, so she may query some marmots several times, and each time the marmot will answer with a new number drawn from the village's distribution.

    Can you help Heidi to find out whether a village follows a Poisson or a uniform distribution?

    Input

    The first line of input will contain the number of villages V (1 ≤ V ≤ 100). The following V lines each describe one village. The description of each village consists of 250 space-separated integers k, drawn from one of the above distributions.

    Output

    Output one line per village, in the same order as provided in the input. The village's line shall state poisson if the village's distribution is of the Poisson type, and uniform if the answer came from a uniform distribution.

    Example
    input
    2
    92 100 99 109 93 105 103 106 101 99 ... (input is truncated)
    28 180 147 53 84 80 180 85 8 16 ... (input is truncated)
    output
    poisson
    uniform
    Note

    The full example input is visually represented below, along with the probability distribution function it was drawn from (the y-axis is labeled by its values multiplied by 250).

    一道很神奇的水题,泊松分布和方差有关,所以我先找到平均值

    他和正态分布是想似的,怎么转换为3西格玛原则呢,就是找到所在位置呗,一半和三分之一还是比较好的,然后这里面的值应该要有比3西格玛中间的数多,随便输了个0.75,蜜汁AC

    #include <bits/stdc++.h>
    using namespace std;
    int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        int a[255];
        int s=0;
        for(int i=0;i<250;i++){
            scanf("%d",&a[i]);
            s+=a[i];
        }
        double ave=s/250.0;
        int cnt=0;
        for(int i=0;i<250;i++){
            if(fabs(a[i]-ave)<=ave/2)
            cnt++;
        }
        if(cnt>250*0.75)
            puts("poisson");
        else
            puts("uniform");
    }
    return 0;}
  • 相关阅读:
    AsyncTask的用法
    关于 android setAnimationStyle 的问题
    android有关bluetooth常用api简介
    Android调用系统Activity选取图像部分区域
    Android 关于ListView几个特别的属性
    Android应用界面动画切换(主要Tabhost中跳转出来的动画效果解决[转]
    ✿Android 3.1 久违的 USB、mtp、rtp
    读《C++沉思录》心得:拷贝构造函数
    Cloud Foundy入门
    HDFS读文件详解
  • 原文地址:https://www.cnblogs.com/BobHuang/p/7286036.html
Copyright © 2011-2022 走看看