본문 바로가기
Problem Solving/BOJ

백준 25197번 합주단 곰곰 - C++(cpp) 풀이

by 어멘드 2022. 5. 19.
반응형

 

1. 두 곰곰이가 있을 때, 둘이 식사할 확률은 1/K
2. 곰곰이 두 마리를 고르는 경우의 수는 N*(N-1)/2
3. 따라서 식사 횟수의 기댓값은 N*(N-1)/2 * (1/K)

 

1. 두 곰곰이가 있을 때, 둘이 식사할 확률은 1/K

 두 곰곰이가 있을 때, 둘이 식사하려면 같은 음을 골라야 한다. 둘이 같은 음을 고를 확률은 K/K^2 = 1/K이다.

 

2. 곰곰이 두 마리를 고르는 경우의 수는 N*(N-1)/2

 또한 곰곰쌍은 총 N*(N-1)/2개 있다.

 

3. 따라서 식사 횟수의 기댓값은 N*(N-1)/2 * (1/K)

 따라서 식사 횟수의 기댓값은 (곰곰쌍의 개수) * (곰곰쌍이 식사할 확률) = N(N-1)/2 * (1/K)이다.

반응형

#include <iostream>
#include <string.h>

using namespace std;

typedef long double ld;

ld N, K;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    
    cout << fixed;
    cout.precision(12);
    
    cin >> N >> K;
    
    // 두 곰곰이가 있을 때, 둘이 식사할 확률 = K/K^2 = K/1
    // 모든 두 곰곰쌍(총 N(N-1)/2개)을 고려해주면
    cout << N*(N-1)/2 * (1/K);

    return 0;
}

 

반응형

댓글