CF16E.Fish
普及+/提高
通过率:0%
时间限制:3.00s
内存限制:128MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
n fish, numbered from 1 to n, live in a lake. Every day right one pair of fish meet, and the probability of each other pair meeting is the same. If two fish with indexes i and j meet, the first will eat up the second with the probability a__ij, and the second will eat up the first with the probability a__ji = 1 - a__ij. The described process goes on until there are at least two fish in the lake. For each fish find out the probability that it will survive to be the last in the lake.
编号为 1 到 n 的 n 条鱼生活在湖中。每天恰好有一对鱼相遇,且任意一对鱼相遇的概率均相同。若编号为 i 和 j 的两条鱼相遇,则第一条鱼吃掉第二条鱼的概率为 aij,第二条鱼吃掉第一条鱼的概率为 aji=1−aij。该过程持续进行,直到湖中至少还剩两条鱼为止。对每条鱼,求其最终成为湖中唯一幸存者的概率。
输入格式
The first line contains integer n (1 ≤ n ≤ 18) — the amount of fish in the lake. Then there follow n lines with n real numbers each — matrix a. a__ij (0 ≤ a__ij ≤ 1) — the probability that fish with index i eats up fish with index j. It's guaranteed that the main diagonal contains zeros only, and for other elements the following is true: a__ij = 1 - a__ji. All real numbers are given with not more than 6 characters after the decimal point.
第一行包含一个整数 n(1≤n≤18)—— 湖中鱼的数量。接下来有 n 行,每行包含 n 个实数 —— 矩阵 a。其中 aij(0≤aij≤1)表示编号为 i 的鱼吃掉编号为 j 的鱼的概率。保证主对角线上的元素全为 0,且对其他元素满足:aij=1−aji。所有实数的小数点后最多有 6 位数字。
输出格式
Output n space-separated real numbers accurate to not less than 6 decimal places. Number with index i should be equal to the probability that fish with index i will survive to be the last in the lake.
输出 n 个以空格分隔的实数,精确到不少于 6 位小数。下标为 i 的数应等于编号为 i 的鱼最终成为湖中唯一幸存者的概率。
输入输出样例
输入#1
2 0 0.5 0.5 0
输出#1
0.500000 0.500000
输入#2
5 0 1 1 1 1 0 0 0.5 0.5 0.5 0 0.5 0 0.5 0.5 0 0.5 0.5 0 0.5 0 0.5 0.5 0.5 0
输出#2
1.000000 0.000000 0.000000 0.000000 0.000000
输入解题思路,AI测评打分。不知道怎么写?