是不是覺得網路流的速度不盡人心?
目錄優化1就是我們空間的優化,有時候我們打.other是不是打得心煩氣燥?
我們可以在初始化時len=1,那麼以後要訪問k的other時只需要k^1就可以了,簡單來說就是二進位制最後一位由1變0,由0變1。
同時,有時候一條邊的x也不大有用,所以我們一樣可以省去,所以,這兩個變數的省去讓我們**簡潔易懂,又省空間,一舉兩得!
好了,當前弧優化是什麼呢(雖然有些大佬自己推出了,但自己可能也不知道自己加了優化!)?
根據最大流或zkw費用流(不會的可以點開我的部落格,我已經置頂了),每次搜過的邊基本上都是流不了的了,如果再去蒐會十分浪費。
那麼,我們可以用乙個陣列儲存每個點的搜到第幾條邊,每次用k慢慢跳到那跳邊,再開始搜,同時,最後,再從第一條邊開始搜到沒搜的那條邊的前一條,可以縮短一些時間!
但是,每次慢慢跳太慢,可以直接記錄是哪條邊,嘿嘿嘿,就不用前面慢慢找了!
當然,我給出最短的當前弧(最開始我打的那種長,但是稍稍快1ms左右qaq,其實也差不了多少,還不如最短的好)。
zkw流(只含遞迴部分,其他照舊,順便說一下,mcmf加不了這個優化!):
#include#include#includeusing namespace std;
typedef long long ll;
struct node
a[201000];int last[1000],len=1;
long long d[1100];
bool v[1100];
int n,m,st,ed;
ll cost=0;
int cur[1100];
inline void ins(int x,int y,ll c,ll k)
int list[1100],head,tail;/*佇列*/
inline bool spfa()
}} v[x]=false;
return ans;/*妥妥的像最大流*/
}int main()
ll zans=0;
while(spfa()==true)/*建圖完成!*/
printf("%lld %lld",zans,cost);
return 0;
}
最大流(dinic):
#include#includeusing namespace std;
struct node
a[210000];int last[11000],n,m,len=1/*用異或代替.other*/,st,ed;
int cur[11000];//當前弧
inline void ins(int x,int y,int c)
int h[11000],list[11000],head=1,tail=n;
inline bool bt_()
} head++;
} if(h[ed]>0)return true;
else return false;
}inline int mymin(int x,int y)
} if(s==0)h[x]=0;
return s;
}int main()
while(bt_()==true)ans+=find(st,999999999);
printf("%d\n",ans);
return 0;
}
網路流的部分優化
只是幫助自己記憶一下。isap應該是一種複雜度比較優秀的最大流演算法。具體優化分為兩部分,都是基於dinic之上的。1.1.1.當前弧優化,這種優化比較顯然,就是對於每一次流,每條邊一定是只經過一次的,那麼這樣就可以將每條流過的變在鏈式前向星中刪掉。2.2.2.高階版分層圖優化。這個現在不是很理解。...
新站優化的幾個小細節
關於網www.cppcns.com站建設初期或者是前期策劃時候需要注意的一些事情。站長小夥伴一般都會忽程式設計客棧略一些 小細節,但是正式因為這些小的細節,才會導致小夥伴的 權重得不到提公升,自然而然流量就沒有了。那麼小貓今天就來給大家說一說這些小細節,希望對大家有 所幫助,小貓每日白話,走起!td...
做好整站優化的幾個小技巧
今天再來與大程式設計客棧家談談seo優化的話題,如何做好整站優化相信不少朋友都有所研究,彭宇誠在很多站長論壇和qq 現大家討論最多的話題也是seo優化,所以在seo優化這塊兒,大家的表現是 即恨又愛 恨是因為咱們 的關鍵詞排名忽高忽低,影響了 的訪問量 愛是因為咱們 的訪www.cppcns.com...