poj1860解題報告 兩種解法

2021-07-05 13:31:56 字數 2225 閱讀 6725

#include "iostream"

#include "fstream"

#include "sstream"

#include "string"

#include "vector"

using

namespace

std;

struct record

;struct list

;typedef

vector

g;int n, m, s;

double v;

bool isvisited[101] = ;

int a, b;

double r1, c1, r2, c2;

static

bool isyes = false;

inline

double convert(double money, double rate, double commision)

void func(int sort, double money, const

vector

&graph,

vector

>& money,vector

& indegree)

return;

}isvisited[sort] = true;

for (int it = 0; it != temp.size()&&isyes!=true; ++it)//

isvisited[sort] = false;

}int main()

; graph[a].ptr.push_back(temp1);//存入乙個相鄰節點

record temp2 = ;

graph[b].ptr.push_back(temp2);

++indegree[a], ++indegree[b];//入度加一

} }}

//尋找乙個環,起點為s

money[s].push_back (v);

func(s,v,graph,money,indegree);

if (isyes)

cout

<< "yes"

<< endl;

else

cout

<< "no"

<< endl;

return

0;}

#include "iostream"

#include "fstream"

#include "sstream"

#include "string"

#include "vector"

using

namespace

std;

int n, m, s,a,b;

double r1,c1,r2,c2,v;

const

double inf = 1000000000;

struct edge

;typedef

vector

e;typedef

vector

dis;

bool relax(edge& one_edge,dis &d)

else

return

false;

}bool bellman_ford(e edge,dis &d)

if (d[s] > v) return

true;

if (!flag) return

false;//本次遍歷沒有進行鬆弛,且沒有找到正環

}//檢測是否找到正環

for (auto &it : edge)

if (relax(it,d)) return

true;//如果還能鬆弛,說明存在正環

return

false;

}int main()

, temp2 = ;

edge.push_back(temp), edge.push_back(temp2);

}bool ans = bellman_ford(edge, d);

if (ans)

cout

<< "yes"

<< endl;

else

cout

<< "no"

<< endl;

return

0;}

poj1860 解題報告

題意 這裡有n種貨幣,分別記為1 n,有m種貨幣交換的方式,每一種方式有a,b兩種錢幣,有rab,cab,rba and cba,四個數,表示交換率,nick手上有其中的一種貨幣s,貨幣s的錢數為v,問你能否通過一定次數的錢幣交換讓nick手中的錢增加 分析 這裡是要判斷迴路,那麼可以用spfa 加...

Bacon Number 兩種解法

view code 題目 cid 567 題目分析 與longth way 類似 這個好象就是傳說中的六度人脈,你只要通過六度人脈就可以找到世界上的任何乙個人。假設乙個人一生會認識n個人,那n n 1 n 2 n 3 n 4 n 5 n 6 世界總人數。給定一些邊確定乙個圖,即給定一些點之間的連通情...

The Longest Path 兩種解法

view code 題目 cid 567 題目分析 給定一些邊確定乙個圖,即給定一些點之間的連通情況,保證給定的圖沒有迴路,要求輸出該圖存在的最長路徑。思路分析 根據給定資訊構造圖,用鄰接表表示。鄰接矩陣明顯很麻煩且效率不高 將每乙個頂點看成是樹根,求出樹的高度。得到一系列樹的高度,最大的那個就是圖...