原題位址
語死早、語體教系列……捋了好幾遍都沒看懂題幹在說啥,試著寫了寫,一提交果然有bug……最後還是看著題解改了個bug才過,倍受打擊……
廣搜
解題思路
簡單的廣搜,用鄰接表存圖,入度為0的(或者c[i]>0的)點是輸入層,先放到佇列裡,c[i]=0的不是輸入層,要預處理一下,把c[i]換成c[i]-u[i](語死早語死早語死早……),然後中規中矩地跑bfs就好了,只要沒入過隊就可以入隊,但只有本身c[i]>0才可以更新下面的點。注意bfs過程中搜到的點更新狀態時不需要再-u[i],根據題意每個點只需要減一次,而前面我們已經預處理過了。輸出層符合c[i]>0的編號放到乙個陣列裡,廣搜結束後進行排序(排的是編號),從小到大輸出。
參考**
#include#include#include#include#includeusing namespace std;
intnum=0,v[105],b[105],c[105],u[105],ch[105],r[105];
bool vis[105];
queueq;
struct mc
e[10005];
void put(int x,int y,int l)
int main()
memset(r,0,sizeof(r));
memset(ch,0,sizeof(ch));
intx,y,z;
for(int i=1;i<=p;i++)
for(int i=1;i<=n;i++)
if (!r[i]) q.push(i);
memset(vis,0,sizeof(vis));
intcnt=0;
while(!q.empty())
for (int i=v[x];i;i=e[i].ne)}}
if(cnt==0)
sort(b+1,b+cnt+1);
for(int i=1;i<=cnt;i++)
cout<
洛谷P1038 神經網路
題目 拓撲排序,難度挺低,但是細節很多。其中乙個注意點 c i 即便是負數,也要進隊,不然有些點入度始終大於0,更新不了 include using namespace std struct kka 103 struct nodee 10003 int n,m,i,j,x,y,z,num,out 1...
洛谷 P1038 神經網路
洛谷 p1038 神經網路 人工神經網路 artificial neural network 是一種新興的具有自我學習能力的計算系統,在模式識別 函式逼近及貸款風險評估等諸多領域有廣泛的應用。對神經網路的研究一直是當今的熱門方向,蘭蘭同學在自學了一本神經網路的入門書籍後,提出了乙個簡化模型,他希望你...
洛谷 P1038 神經網路
人工神經網路 artificial neural networkartificialneuralnetwork 是一種新興的具有自我學習能力的計算系統,在模式識別 函式逼近及貸款風險評估等諸多領域有廣泛的應用。對神經網路的研究一直是當今的熱門方向,蘭蘭同學在自學了一本神經網路的入門書籍後,提出了乙個...