아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

돼지들 몰아내기

시간 제한1초메모리 제한128 MB

요약
무방향 그래프의 1번 도시에서 시작한 폭탄이 매 방문마다 확률 P/Q로 폭발하고 그렇지 않으면 이웃 도시로 무작위 이동할 때, 각 도시에서 폭발할 확률을 구한다.
난이도

보통10점 중 6점

유형
확률, 그래프, 동적 계획법, 수학
정답자
아직 제출이 없습니다

문제

소들은 돼지들을 땅에서 몰아내기 위해 무작위로 움직이는 악취 폭탄을 만들었다. 돼지 문명은 11번부터 NN번까지 번호가 매겨진 NN개의 도시로 이루어져 있으며, 이 도시들은 MM개의 양방향 도로로 연결되어 있다. 각 도로는 서로 다른 두 도시를 잇고, 11번 도시는 반드시 다른 도시와 적어도 하나의 도로로 연결되어 있다.

악취 폭탄은 11번 도시에 놓인다. 매 시각(가장 첫 시각을 포함한다)마다, 어떤 도시에 있는 폭탄은 다음 두 가지 중 정확히 하나를 한다.

  • 확률 PQ\frac{P}{Q}로 폭탄이 터져서 현재 있는 도시를 오염시키고, 과정이 끝난다.
  • 그렇지 않으면(확률 1−PQ1 - \frac{P}{Q}) 폭탄은 터지지 않는다. 이때 폭탄은 현재 도시에서 나가는 도로 중 하나를 균일한 확률로 무작위로 골라, 그 도로를 따라 이웃 도시로 이동한다. 한 도시에서 나가는 모든 도로는 선택될 확률이 같다.

폭탄이 무작위로 돌아다니기 때문에, 소들은 각 도시에 대해 폭탄이 결국 그 도시에서 터질(즉 그 도시를 오염시킬) 확률을 알고 싶어 한다.

예를 들어, 도시가 두 개뿐이고 하나의 도로로 연결되어 있으며, 11번 도시에서 출발한 폭탄이 도시에 들어갈 때마다 확률 12\frac{1}{2}로 터진다고 하자.

1--2

폭탄이 지나가는 도시들의 순서로 각 경로를 나타내면(마지막에 적힌 도시에서 폭탄이 터진다), 가능한 경로는 다음과 같다.

1
1-2
1-2-1
1-2-1-2
1-2-1-2-1
...

폭탄이 11번 도시에서 터지는 경우는 지나간 도시의 개수가 홀수인 경로들(1; 1-2-1; 1-2-1-2-1; 그리고 그 이후)뿐이다. kk개의 도시를 지나는 경로가 일어날 확률은 (12)k\left(\frac{1}{2}\right)^k이다. 처음 k−1k-1개의 도시에서는 매번 터지지 않아야 하고(각각 확률 1−12=121-\frac{1}{2}=\frac{1}{2}), kk번째 도시에서 터져야 하기(확률 12\frac{1}{2}) 때문이다. 홀수 번째 항들을 모두 더하면 11번 도시에서 터질 확률을 얻는다.

12+(12)3+(12)5+⋯=23≈0.666666667\frac{1}{2} + \left(\frac{1}{2}\right)^3 + \left(\frac{1}{2}\right)^5 + \cdots = \frac{2}{3} \approx 0.666666667

따라서 22번 도시에서 터질 확률은 13≈0.333333333\frac{1}{3} \approx 0.333333333이다.

입력

  • 첫째 줄: 네 개의 정수 NN, MM, PP, QQ가 공백으로 구분되어 주어진다 (2≤N≤3002 \le N \le 300; 1≤M≤448501 \le M \le 44850; 1≤P≤1061 \le P \le 10^6; 1≤Q≤1061 \le Q \le 10^6; P≤QP \le Q).
  • 둘째 줄부터 M+1M+1째 줄까지: 각 줄에는 두 정수 AjA_j와 BjB_j가 공백으로 구분되어 주어지며 (1≤Aj≤N1 \le A_j \le N; 1≤Bj≤N1 \le B_j \le N; Aj≠BjA_j \ne B_j), 이는 도시 AjA_j와 BjB_j를 잇는 양방향 도로를 나타낸다.

출력

NN개의 줄을 출력한다. ii번째 줄에는 ii번 도시가 오염될 확률을 소수점 아래 정확히 99자리로 출력한다.

예제3

  1. 예제 1

    입력
    2 1 1 2
    1 2
    
    예상 출력
    0.666666667
    0.333333333
    
  2. 예제 2

    입력
    3 2 1 2
    1 2
    2 3
    
    예상 출력
    0.583333333
    0.333333333
    0.083333333
    
  3. 예제 3

    입력
    3 3 1 3
    1 2
    2 3
    1 3
    
    예상 출력
    0.500000000
    0.250000000
    0.250000000