P1078 文化之旅 bfs題解

2022-05-05 13:39:09 字數 777 閱讀 1415

一道資料十分水的題目,出自2023年的普及組。各種玄學演算法都能過,最常見的是倒著搜的dfs。

我是在水最短路的時候刷到這個題的,因為喜歡用bfs,所以寫了這個題解。

思路來自:洛谷dalao   lushangyin的題解

這個題的資料很小,n只有100,直接使用二維陣列儲存資料  

也很像前向星的存邊方法

定義

a[x][i].to表示點x的第i條邊所到達的點

a[x][i].dis表示這條邊的權值

c[i]表示點i所有的文化

vis[i][j]判斷點i與點j之間文化目前狀態

cnt[i] 表示點i 已經有幾條邊了

#include//大家不要學

using namespace std;

struct gjc a[110][110];

int cnt[110];

int n,m,k,str,en;

int c[110],d[110];

int vis[2001][101];

void read()

}void out()//輸出

d[node]=d[v]+a[v][i].dis;

que.push(node);//將縮短路徑的點推入佇列中

}} }

} int main()

P1078 文化之旅

題面 這題好像是初二時老師講過的一道題,但是。我沒聽?反正沒交過就對了。我本來想的是深搜 spfa,寫到50 行實現不了?果斷看tj,floyd?黑人問號?這麼簡單的題綠了?1 include 2 include3 include4 include5 include6 include 7 inclu...

P1078 文化之旅 洛谷

剛一看這道題,很多蒟蒻就肯定會想道用最短路來做,這題除了有文化的能與不能的限制以外,就是個模板題。那我們只需要修改輸入輸出,再在演算法裡判斷,就可以 沒錯,作者本人就是這樣的。我感覺我的ac只是應為資料太水了 在這有幾個主要的坑點 1,要反著搜 不知道為什麼我正著搜就錯一組,反著就ac了 應該是我的...

洛谷 P1078 文化之旅

有一位使者要遊歷各國,他每到乙個國家,都能學到一種文化,但他不願意學習任何一 種文化超過一次 即如果他學習了某種文化,則他就不能到達其他有這種文化的國家 不 同的國家可能有相同的文化。不同文化的國家對其他文化的看法不同,有些文化會排斥外來 文化 即如果他學習了某種文化,則他不能到達排斥這種文化的其他...