給定 \(n\) 個點 \(m\) 條邊的無向圖,每條邊形如 \((u,v,r)\),表示 \(u,v\) 之間有一條阻值為 \(r\omega\) 的電阻。求 \(s\) 到 \(t\) 的等效電阻。
\(n\le100\),\(m\le\frac2\)。
其中 \(\varphi\) 表示電勢(本題中可以粗暴地理解作「高度」,想象成水流從高往低流)。對兔子這種初中電學還沒學完的蒟蒻極不友好。
欽定 \(s\) 輸出 \(1a\) 的電流,對於每個點,結合上兩條定律,有:
\[\sum_\frac}=([u=s]-[u-t])a
\]但發現如果有解,那麼每個 \(\varphi\) 加上同一常數仍是一組解,所以斷定存在乙個式子與其它 \(n-1\) 個線性相關。隨便去掉乙個式子,再欽定 \(\varphi_t=0\),就能解出 \(s\) 的電勢 \(\varphi_s\)。由於 \(i=\fracr=1a\),所以 \(\varphi_s\) 的數值就是等效電阻的數值。
#include #include const int maxn = 100;
const double eps = 1e-9;
int n, m, s, t;
double coe[maxn + 5][maxn + 5], i[maxn + 5], u[maxn + 5];
inline double abs_ ( const double x )
inline void gauss ( double a[maxn + 5][maxn + 5], double* b, double* x )
} if ( i ^ p ) std::swap ( a[i], a[p] ), std::swap ( b[i], b[p] );
for ( int j = i + 1; j <= n; ++ j )
} for ( int i = n; i; -- i )
}int main ()
coe[n][t] = 1;
gauss ( coe, i, u );
printf ( "%.2f\n", u[s] );
return 0;
}
高消記得換係數行的時候順便換值啊……這種錯查了快 \(2min\) qwq…… Solution LOCAL 客星璀璨之夜
ouroj.給定座標軸上的 2n 1 個座標 x 1,x 2,cdots,x 其中偶數下標的位置是乙個小球,奇數下標的位置是乙個球洞。每次操作隨機選擇乙個小球,並隨機讓它向左或向右滾入臨近的球洞,該球洞被填滿,視作平地。求所有球進洞後,球滾動總距離的期望。對 998244353 取模。n le300...
JSON解析 XML解析
json解析 1大括號代表字典 2中括號 小括號 代表陣列 3冒號的左右兩邊分別為鍵和值 key value 4資料和資料之間 用逗號隔開 我們在本機上建立乙個file.xml,進行解析,並取出年齡35 json解析 本地讀取student.xm l檔案nsstring jstr nsstring ...
JSON解析 XML解析
主要是顯示地理位置和天氣以及溫度。對網路請求下來的json資料進行解析。import viewcontroller.h define kweatherurl inte ce viewcontroller property weak,nonatomic iboutlet uilabel citylab...