BZOJ 3143 遊走 高斯消元

2021-07-24 09:17:31 字數 863 閱讀 4188

中文題目。

f(v) 表示小z在圖上游走時,在v點走的次數

這樣就可以根據圖上的鏈結關係 構造出n個方程在求解既可

**:

#include 

#include

#include

#include

using

namespace

std;

const

int maxn = 500 + 5;

const

double eps = 1e-4;

typedef

double matrix[maxn][maxn];

matrix a;

bool adj[maxn][maxn];

int n,m,ous[maxn];

struct edge

}edges[maxn * maxn];

void init()

void gauss()

}for(j = n - 1;j >= 0;--j)

}int main()

n--;

//構造方程

for(int i = 0;i < n;++i)

}a[i][i] -= 1.0;

}a[0][n] = -1.0;

//高斯消元

gauss();

for(int i = 0;i < m;++i)

sort(edges,edges + m);

double ans = 0;

for(int i = 0;i < m;++i)

printf("%.3f\n",ans);

return

0;}

BZOJ 3143 遊走(高斯消元)

題意 乙個無向連通圖,頂點從1編號到n,邊從1編號到m。小z在該圖上進行隨機遊走,初始時小z在1號頂點,每一步小z以相等的概率隨機選擇當前頂點的某條邊,沿著這條邊走到下乙個頂點,獲得等於這條邊的編號的分數。當小z 到達n號頂點時遊走結束,總分為所有獲得的分數之和。現在,請你對這m條邊進行編號,使得小...

BZOJ 3143 遊走(高斯消元)

題意 乙個無向連通圖,頂點從1編號到n,邊從1編號到m。小z在該圖上進行隨機遊走,初始時小z在1號頂點,每一步小z以相等的概率隨機選擇當前頂點的某條邊,沿著這條邊走到下乙個頂點,獲得等於這條邊的編號的分數。當小z 到達n號頂點時遊走結束,總分為所有獲得的分數之和。現在,請你對這m條邊進行編號,使得小...

BZOJ3143 遊走(高斯消元,數學期望)

bzoj 首先,概率不會直接算。所以來乙個逼近法算概率 這樣就可以求出每一條邊的概率 隨著走的步數的增多,答案越接近 我卡到 5000 步可以拿 50 分 include include include include include include include include include ...