锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品国产成人99久久,91亚洲国产成人久久精品网址,国内精品久久久久久久久电影网http://www.shnenglu.com/varg-vikernes/category/16058.htmlzh-cnThu, 15 Sep 2011 17:41:06 GMTThu, 15 Sep 2011 17:41:06 GMT60str_fastcmphttp://www.shnenglu.com/varg-vikernes/archive/2011/09/14/155783.html緋背緋背Wed, 14 Sep 2011 14:00:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2011/09/14/155783.htmlhttp://www.shnenglu.com/varg-vikernes/comments/155783.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2011/09/14/155783.html#Feedback0http://www.shnenglu.com/varg-vikernes/comments/commentRss/155783.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/155783.html鎽樿嚜錛歭uajit婧愮爜lj_str.c

/* Fast string data comparison. Caveat: unaligned access to 1st string! */
static LJ_AINLINE int str_fastcmp(const char *a, const char *b, MSize len)
{
  MSize i 
= 0;
  lua_assert(len 
> 0);
  lua_assert((((uintptr_t)a 
+ len) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4);
  
do {  /* Note: innocuous access up to end of string + 3. */
    uint32_t v 
= lj_getu32(a+i) ^ *(const uint32_t *)(b+i);
    
if (v) {
      i 
-= len;
#if LJ_LE
      
return (int32_t)i >= -3 ? (v << (32+(i<<3))) : 1;
#else
      
return (int32_t)i >= -3 ? (v >> (32+(i<<3))) : 1;
#endif
    }
    i 
+= 4;
  } 
while (i < len);
  
return 0;
}


緋背 2011-09-14 22:00 鍙戣〃璇勮
]]>
Minimal Steiner Tree 綆浠?/title><link>http://www.shnenglu.com/varg-vikernes/archive/2011/02/24/140560.html</link><dc:creator>緋背</dc:creator><author>緋背</author><pubDate>Wed, 23 Feb 2011 16:19:00 GMT</pubDate><guid>http://www.shnenglu.com/varg-vikernes/archive/2011/02/24/140560.html</guid><wfw:comment>http://www.shnenglu.com/varg-vikernes/comments/140560.html</wfw:comment><comments>http://www.shnenglu.com/varg-vikernes/archive/2011/02/24/140560.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/varg-vikernes/comments/commentRss/140560.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/varg-vikernes/services/trackbacks/140560.html</trackback:ping><description><![CDATA[MinimalSteinerTree 鐨勬剰鎬濇槸錛?br>鍦ㄥ浘涓壘鍑轟竴涓敓鎴愭爲錛岄渶瑕佸皢鎸囧畾鐨勬暟涓偣榪炴帴錛岃竟鏉冩誨兼渶灝忋?br>鏈灝忕敓鎴愭爲鏄?MinimalSteinerTree 鐨勪竴縐嶇壒孌婃儏鍐點?br>姝ら棶棰樻槸NP瀹屽叏闂銆?br>鍦≒OJ 3123涓殑鏍囩▼緇欏嚭浜嗕竴涓掑綊鐨勭畻娉曟潵瑙e喅榪欎釜闂銆?br><br>棣栧厛鐢╢loyd綆楁硶姹傚嚭涓や袱涔嬮棿鐨勬渶鐭礬寰勩?br>鐒跺悗鎶婃墍鏈夌偣閮戒袱涓ら摼鎺ヨ搗鏉ワ紝鏉冨煎氨鏄畠浠殑鏈鐭礬寰勩?br>鍋囪鎸囧畾蹇呴』榪炴帴鐨勭偣鏈塏涓?br>閭d箞MinimalSteinerTree 鏍戜腑鐨勫唴鐐規渶澶氭湁N-2涓?br>鍦ㄧ焊涓婄敾涓涓嬪氨鐭ラ亾浜嗭紝鍐呯偣鏈澶氱殑鎯呭喌灝辨槸鏍戜負婊′簩鍙夋爲鐨勬儏鍐點?br>鑰岀敱浜庝箣鍓嶇殑floyd綆楁硶銆傛妸鏁翠釜鍥劇粰“緙?#8221;浜嗕竴涓嬨?br>鎵浠ユ爲鏈澶氭湁N-2+N涓偣銆?br>鏋氫婦鎵鏈夊彲鑳界殑鐐歸泦銆傚姣忎釜鐐歸泦姹傛渶灝忕敓鎴愭爲銆傚彇鏈灝忓煎嵆鍙?br><br>鍙﹀涓縐嶆柟娉曟槸浣跨敤鍔ㄦ佽鍒掞紝璇︽儏璇瘋<a href="http://www.shnenglu.com/varg-vikernes/archive/2011/02/24/140598.html">榪欓噷</a>銆?br> <img src ="http://www.shnenglu.com/varg-vikernes/aggbug/140560.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/varg-vikernes/" target="_blank">緋背</a> 2011-02-24 00:19 <a href="http://www.shnenglu.com/varg-vikernes/archive/2011/02/24/140560.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[灝忕▼搴廬緇欏嚭涓涓渾錛屼笂闈㈡湁鏁頒釜鐐癸紝浠誨彇4涓偣緇勬垚鍥涜竟褰紝浣垮緱姝ゅ洓杈瑰艦闈㈢Н鏈澶?/title><link>http://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138565.html</link><dc:creator>緋背</dc:creator><author>緋背</author><pubDate>Sat, 15 Jan 2011 03:07:00 GMT</pubDate><guid>http://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138565.html</guid><wfw:comment>http://www.shnenglu.com/varg-vikernes/comments/138565.html</wfw:comment><comments>http://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138565.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/varg-vikernes/comments/commentRss/138565.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/varg-vikernes/services/trackbacks/138565.html</trackback:ping><description><![CDATA[榪欎釜闂婧愪簬POJ 2500銆傜敱浜庣湅閿欎簡棰樼洰錛屾垜鎶婇鎰忕悊瑙f垚“緇欏嚭涓涓渾錛屼笂闈㈡湁鏁頒釜鐐癸紝浠誨彇4涓偣緇勬垚鍥涜竟褰紝浣垮緱姝ゅ洓杈瑰艦闈㈢Н鏈澶?#8221;銆?br>鏍囩▼緇欏嚭鐨勬柟娉曟槸O(N^2)錛屾槸瀵逛簬鐐逛箣闂磋窛紱誨浐瀹氱殑鎯呭喌銆?br>鎴戜篃鎯沖嚭浜嗕竴涓狾(N^2)鐨勭畻娉曠敤浜庤В鍐充換鎰忎綅緗殑鐐圭殑鎯呭喌銆?br><br>灝嗙偣鎸夌収欏烘椂閽堟帓搴?br>鍋囪鍥涜竟褰㈢殑鍥涗釜鐐笰, B, C, D銆傛寜鐓ч『鏃墮拡鏂瑰悜鎺掑簭銆?br>鎸夐『搴忔灇涓続<br>   鎸夐『搴忔灇涓綜<br>      B鍙栨渶鎺ヨ繎寮C涓績鐨勭偣錛孌鍚岀悊<br><br>鍦ㄧ焊涓婄敾鐢誨氨鍙互鐪嬪嚭錛屽鏋淐鏄掑鐨勶紝鍒橞D涔熸槸閫掑鐨勩?br>鍥犳C鎵簡涓鍦堬紝BD鍔犺搗鏉ユ渶澶氫篃鎵袱鍦堛?br>鏋氫婦A鏄疧(N)錛屾灇涓綜鏄疧(N)錛孊D鍧囨憡涓嬫潵涔熸槸O(N)<br>鎵浠ユ誨鏉傚害鏄疧(N^2)<br><br>铏界劧璇村鏉傚害璺熸爣紼嬩竴鏍鳳紝浣嗚繕鏄疶LE浜嗭紝鍝ュ緢涔呮病鍐機浠g爜浜嗭紝鐜板湪姣旇緝鎸?br><br> <img src ="http://www.shnenglu.com/varg-vikernes/aggbug/138565.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/varg-vikernes/" target="_blank">緋背</a> 2011-01-15 11:07 <a href="http://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138565.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[杞琞 Floyd 綆楁硶鍘熺悊http://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138563.html緋背緋背Sat, 15 Jan 2011 02:56:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138563.htmlhttp://www.shnenglu.com/varg-vikernes/comments/138563.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2011/01/15/138563.html#Feedback0http://www.shnenglu.com/varg-vikernes/comments/commentRss/138563.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/138563.html

    floyd綆楁硶鏄竴涓粡鍏哥殑鍔ㄦ佽鍒掔畻娉曘傜敤閫氫織鐨勮璦鏉ユ弿榪扮殑璇濓紝棣栧厛鎴戜滑鐨勭洰鏍囨槸瀵繪壘浠庣偣i鍒扮偣j鐨勬渶鐭礬寰勩備粠鍔ㄦ佽鍒掔殑瑙掑害鐪嬮棶棰橈紝鎴戜滑闇瑕佷負榪欎釜鐩爣閲嶆柊鍋氫竴涓癄閲婏紙榪欎釜璇犻噴姝f槸鍔ㄦ佽鍒掓渶瀵屽垱閫犲姏鐨勭簿鍗庢墍鍦級錛宖loyd綆楁硶鍔犲叆浜嗚繖涓蹇?/p>

    Ak(i,j)錛氳〃紺轟粠i鍒癹涓?/strong>涓嶇粡榪囩儲寮曟瘮k澶х殑鐐圭殑鏈鐭礬寰?/strong>銆?/p>

    榪欎釜闄愬埗鐨勯噸瑕佷箣澶勫湪浜庯紝瀹冨皢鏈鐭礬寰勭殑姒傚康鍋氫簡闄愬埗錛屼嬌寰楄闄愬埗鏈夋満浼氭弧瓚寵凱浠e叧緋伙紝榪欎釜榪唬鍏崇郴灝卞湪浜庣爺絀訛細鍋囪Ak(i,j)宸茬煡錛屾槸鍚﹀彲浠ュ熸鎺ㄥ鍑篈k-1(i,j)銆?/p>

    鍋囪鎴戠幇鍦ㄨ寰楀埌Ak(i,j)錛岃屾鏃禔k(i,j)宸茬煡錛岄偅涔堟垜鍙互鍒嗕袱縐嶆儏鍐墊潵鐪嬪緟闂錛?. Ak(i,j)娌塊旂粡榪囩偣k錛?. Ak(i,j)涓嶇粡榪囩偣k銆傚鏋滅粡榪囩偣k錛岄偅涔堝緢鏄劇劧錛孉k(i,j) = Ak-1(i,k) + Ak-1(k,j)錛屼負浠涔堟槸Ak-1鍛紵鍥犱負瀵?i,k)鍜?k,j)錛岀敱浜巏鏈韓灝辨槸婧愮偣錛堟垨鑰呰緇堢偣錛夛紝鍔犱笂鎴戜滑姹傜殑鏄疉k(i,j)錛屾墍浠ユ弧瓚充笉緇忚繃姣攌澶х殑鐐圭殑鏉′歡闄愬埗錛屼笖宸茬粡涓嶄細緇忚繃鐐筴錛屾晠寰楀嚭浜咥k-1榪欎釜鍊箋傞偅涔堥亣鍒扮浜岀鎯呭喌錛孉k(i,j)涓嶇粡榪囩偣k鏃訛紝鐢變簬娌℃湁緇忚繃鐐筴錛屾墍浠ユ牴鎹蹇碉紝鍙互寰楀嚭Ak(i,j)=Ak-1(i,j)銆傜幇鍦紝鎴戜滑紜俊鏈変笖鍙湁榪欎袱縐嶆儏鍐?--涓嶆槸緇忚繃鐐筴錛屽氨鏄笉緇忚繃鐐筴錛屾病鏈夌涓夌鎯呭喌浜嗭紝鏉′歡寰堝畬鏁達紝閭d箞鏄夋嫨鍝竴涓憿錛熷緢綆鍗曪紝姹傜殑鏄渶鐭礬寰勶紝褰撶劧鏄摢涓渶鐭紝姹傚彇鍝釜錛屾晠寰楀嚭寮忓瓙錛?/p>

    Ak(i,j) = min( Ak-1(i,j), Ak-1(i,k) + Ak-1(k,j) )


鍥犳floyd鐨勬渶澶栧眰寰幆錛?br>for (k = 0; k < n; k++) ...
灝辨槸鍒嗗埆姹傚嚭 A0(i,j), A1(i,j), ..., An(i,j)
鎴戝薄嬈″啓閿檉loyd鐨勭▼搴忥紝浠婂ぉ鍙堝啓閿欎竴嬈°傘傚敖綆″畠寰堢煭錛屼絾鍘熺悊鐪熺殑寰堢墰姣斻?br>鍙鐭ラ亾浜嗗師鐞嗭紝灝變笉浼氬啀鍐欓敊浜嗭紒



緋背 2011-01-15 10:56 鍙戣〃璇勮
]]>
灝忕▼搴忥細娑堥櫎鏂瑰潡娓告垙http://www.shnenglu.com/varg-vikernes/archive/2010/11/23/134401.html緋背緋背Tue, 23 Nov 2010 08:32:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2010/11/23/134401.htmlhttp://www.shnenglu.com/varg-vikernes/comments/134401.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2010/11/23/134401.html#Feedback0http://www.shnenglu.com/varg-vikernes/comments/commentRss/134401.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/134401.html
澶氫釜涓嶅悓棰滆壊鐨勬柟鍧椾綅浜庝竴鍒楋紝浣犳瘡嬈″彲浠ユ秷闄や竴鐗囪繛緇殑鐩稿悓棰滆壊鐨勬柟鍧楋紝騫惰幏寰楀緱鍒嗭經榪炵畫鏂瑰潡鐨勪釜鏁癪2锝濄?br>娑堥櫎瀹屽悗鍙寵竟鐨勬柟鍧楃Щ鍔ㄨ繃鏉ャ?br>闂紝鎬庢牱鐜╂墠鑳戒嬌寰楀垎鏈楂橈紵

榪欐槸涓閬撻粦涔︿笂闈㈢殑棰樼洰銆傛垜鎯充簡n涔呮兂涓嶅嚭鏉ャ傘?br>榛戜功鐨勮В娉曟槸鍔ㄦ佽鍒掞紝鏃墮棿澶嶆潅搴︿負O(N^4)錛岀┖闂村鏉傚害涓篛(N^3)銆?br>瑙夊緱鎸烘湁鎰忔濈殑錛屽氨鎶婂畠鐨勬柟娉曞疄鐜頒簡涓涓嬨?br>
# Block Game

blocks 
= [(1,2), (2,4), (3,5), (1,2), (3,6), (1,9), (2,10)]
best 
= {}
choose 
= {}

def sqr(x):
    
return x*x

def dfs(i, j, k):
    
if j < i:
        
return 0
    
if (i, j, k) in best:
        
return best[(i, j, k)]
    m 
= [(sqr(k + blocks[j][1]) + dfs(i, j - 1, 0), j)]
    
for p in range(i, j):
        
if blocks[p][0] == blocks[j][0]:
            m 
+= [(dfs(i, p, k + blocks[j][1]) + dfs(p + 1, j - 1, 0), p)]
    best[(i, j, k)], choose[(i, j, k)] 
= max(m)
    
return best[(i, j, k)]

def show(i, j, k, s):
    
if j < i:
        
return 
    
#print 'show', i, j, k, blocks
    c = choose[(i, j, k)]
    
if c == j:
        s 
+= sqr(blocks[c][1])
        
print blocks, 'remove', c, ':', blocks[c], 'score', s
        
del blocks[c]
        show(i, j 
- 1, 0, s)
    
else:
        show(c 
+ 1, j - 1, 0, s)
        v 
= blocks[c + 1][1]
        blocks[c] 
= (blocks[c][0], blocks[c][1+ v)
        
del blocks[c + 1]
        show(i, c, v, s)

dfs(0, len(blocks) 
- 1, 0)
show(0, len(blocks) 
- 1, 0, 0)

        



緋背 2010-11-23 16:32 鍙戣〃璇勮
]]>
灝忕▼搴忥細緇欏嚭n涓暟錛屽浣曟壘鍑轟笁涓暟錛屽畠浠殑鍜岀瓑浜巏http://www.shnenglu.com/varg-vikernes/archive/2010/11/21/134244.html緋背緋背Sun, 21 Nov 2010 15:10:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2010/11/21/134244.htmlhttp://www.shnenglu.com/varg-vikernes/comments/134244.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2010/11/21/134244.html#Feedback0http://www.shnenglu.com/varg-vikernes/comments/commentRss/134244.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/134244.html浣嗗彲浠ユ湁灝忓皬浼樺寲錛?br>涓銆傚厛鎺掑簭
浜屻傛灇涓緄, j, k鐨勬椂鍊欙紝鍥哄畾i鐨勬椂鍊欙紝j鍜宬鍒嗗埆浠庡乏浠庡彸鎵弿鏁扮粍錛岀洿鍒頒袱涓鍒頒負姝€?br>涓夈傚浜庢瘡涓猧錛宬浠庡彸鎵弿鐨勫紑濮嬩綅緗槸閫掑噺鐨勩?br>
鐒跺悗灝辨湁浜嗕笅闈㈢殑灝忕▼搴忥細

#include <stdio.h>
#include 
<iostream>
#include 
<algorithm>

using namespace std;

int N = 10;
int K = 5;
int arr[] = {12545102351};

int main()
{
    
int a, b, c, i;

    sort(arr, arr 
+ N);
    c 
= N - 1;
    
for (a = 0; a < c; a++{
        
for (b = a + 1; b < c; b++{
            
while (c >= 0 && arr[a] + arr[b] + arr[c] > K)
                c
--;
            
for (i = c; b < i; b++{
                
while (i >= 0 && arr[a] + arr[b] + arr[i] > K)
                    i
--;
                
if (i >= 0 && arr[a] + arr[b] + arr[i] == K)
                    printf(
"%d %d %d\n", arr[a], arr[b], arr[i]);
            }

        }

    }


    
return 0;
}




緋背 2010-11-21 23:10 鍙戣〃璇勮
]]>
Dinic 綆楁硶妯℃澘http://www.shnenglu.com/varg-vikernes/archive/2010/08/12/123176.html緋背緋背Thu, 12 Aug 2010 06:33:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2010/08/12/123176.htmlhttp://www.shnenglu.com/varg-vikernes/comments/123176.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2010/08/12/123176.html#Feedback4http://www.shnenglu.com/varg-vikernes/comments/commentRss/123176.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/123176.htmlDinic綆楁硶鏄竴縐嶆瘮杈冨鏄撳疄鐜扮殑錛岀浉瀵規瘮杈冨揩鐨勬渶澶ф祦綆楁硶銆?br>浠婂ぉ鐪嬩簡涓涓嬪畠鐨勫師鐞嗭紝鍙戠幇鐨勭‘寰堢墰閫箋?br>
姹傛渶澶ф祦鐨勬湰璐紝灝辨槸涓嶅仠鐨勫鎵懼騫胯礬寰勩傜洿鍒版壘涓嶅埌澧炲箍璺緞涓烘銆?br>瀵逛簬榪欎釜涓鑸х殑榪囩▼錛孌inic綆楁硶鐨勪紭鍖栧涓嬶細

錛?錛?br>Dinic綆楁硶棣栧厛瀵瑰浘榪涜涓嬈FS錛岀劧鍚庡湪BFS鐢熸垚鐨勫眰嬈″浘涓繘琛屽嬈FS銆?br>灞傛鍥劇殑鎰忔濆氨鏄紝鍙湁鍦˙FS鏍戜腑娣卞害鐩稿樊1鐨勮妭鐐規墠鏄繛鎺ョ殑銆?br>榪欏氨鍒囨柇浜嗗師鏈夌殑鍥句腑鐨勮澶氫笉蹇呰鐨勮繛鎺ャ傚緢鐗涢鹼紒
榪欐槸闇瑕佽瘉鏄庣殑錛屼及璁¤瘉鏄庝篃寰堝鏉傘?br>
錛?錛?br>闄ゆ涔嬪錛屾瘡嬈FS瀹屽悗錛屼細鎵懼埌璺緞涓閲忔渶灝忕殑涓鏉¤竟銆?br>鍦ㄨ繖鏉¤竟涔嬪墠鐨勮礬寰勭殑瀹歸噺鏄ぇ浜庣瓑浜庤繖鏉¤竟鐨勫閲忕殑銆?br>閭d箞浠庤繖鏉¤竟涔嬪墠鐨勭偣錛屽彲鑳藉紩鍙戝嚭鍒殑澧炲箍璺緞銆?br>姣斿璇?nbsp;S -> b -> c -> d -> T 鏄竴鏉″騫胯礬寰勶紝瀹歸噺鏈灝忕殑杈規槸 b -> c銆?br>鍙兘瀛樺湪涓鏉?S -> b -> e -> f -> g -> T 榪欐牱鐨勫騫胯礬寰勩?br>榪欐牱鐨勮瘽錛屽湪鎵懼埌絎竴鏉″騫胯礬寰勫悗錛屽彧闇瑕佸洖婧埌 b 鐐癸紝灝卞彲浠ョ戶緇壘涓嬪幓浜嗐?br>榪欐牱鍋氱殑濂藉鏄紝閬垮厤浜嗘壘鍒頒竴鏉¤礬寰勫氨浠庡ご寮濮嬪鎵懼彟澶栦竴鏉$殑寮閿銆?br>涔熷氨鏄啀嬈′粠 S 瀵繪壘鍒?b 鐨勫紑閿銆?br>榪欎釜榪囩▼鐪嬩技澶嶆潅錛屼絾鏄唬鐮佸疄鐜拌搗鏉ュ緢浼橀泤錛屽洜涓哄畠鐨勬湰璐ㄥ氨鏄洖婧紒


錛?錛?br>鍦ㄥ悓涓嬈?DFS 涓傚鏋滀粠涓涓偣寮曞彂涓嶅嚭浠諱綍鐨勫騫胯礬寰勶紝灝卞皢榪欎釜鐐瑰湪灞傛鍥句腑鎶瑰幓銆?br>
鑰岃繖鏍蜂竴涓畻娉曪紝瀹炵幇璧鋒潵灞呯劧鍙渶瑕?00琛屻傚お鍚婁簡銆?br>鎴戠殑浠g爜鏄弬鑰冨埆浜虹殑浠g爜鍐欑殑銆傚彲浠ョ敤 POJ 1273 嫻嬭瘯銆?br>
#include <stdio.h>
#include 
<stdlib.h>
#include 
<string.h>
#include 
<limits.h>

#define MAX_VETXS 1024
#define MAX_EDGES 1024

int E[MAX_EDGES], next[MAX_EDGES], C[MAX_EDGES], M;
int V[MAX_VETXS], L[MAX_VETXS], Q[MAX_VETXS], N;
int S, T;

void __insert(int from, int to, int cap)
{
    M
++;
    C[M] 
= cap;
    E[M] 
= to;
    next[M] 
= V[from];
    V[from] 
= M;
}


void insert(int from, int to, int cap)
{
    __insert(from, to, cap);
    __insert(to, from, 
0);
}


int bfs()
{
    
int h, t, e, u, v;

    h 
= t = 0;
    Q[t
++= S;
    memset(L, 
0, N*sizeof(L[0]));
    L[S] 
= 1;
    
while (h != t) {
        u 
= Q[h++];
        
for (e = V[u]; e; e = next[e]) {
            v 
= E[e];
            
if (!L[v] && C[e] > 0{
                L[v] 
= L[u] + 1;
                Q[t
++= v;
            }

        }

    }


    
return L[T];
}


int dfs()
{
    
int t, u, v, e, i, f, r, back;

    t 
= 1;
    r 
= 0;

    
while (t) {
        u 
= (t == 1? S : E[Q[t - 1]];
        
if (u == T) {
            f 
= INT_MAX;
            
for (i = 1; i < t; i++{
                e 
= Q[i];
                
if (C[e] < f) {
                    f 
= C[e];
                    back 
= i;
                }

            }

            
for (i = 1; i < t; i++{
                e 
= Q[i];
                C[e] 
-= f;
                C[e
^1+= f;
            }

            r 
+= f;
            t 
= back;
        }
 else {
            
for (e = V[u]; e; e = next[e]) {
                v 
= E[e];
                
if (L[v] == L[u] + 1 && C[e] > 0)
                    
break;
            }

            
if (e)
                Q[t
++= e;
            
else {
                t
--;
                L[u] 
= 0;
            }

        }

    }


    
return r;
}


int dinic()
{
    
int f = 0;

    
while (bfs())
        f 
+= dfs();

    
return f;
}


int main()
{
    
int n, m, a, b, c, i;

    freopen(
"d:\\in.txt""r", stdin);

    
while (scanf("%d%d"&n, &m) != EOF) {
        S 
= 0;
        T 
= m - 1;
        N 
= m;
        memset(V, 
0, N*sizeof(V[0]));
        M 
= 2;
        
for (i = 0; i < n; i++{
            scanf(
"%d%d%d"&a, &b, &c);
            insert(a 
- 1, b - 1, c);
        }

        printf(
"%d\n", dinic());
    }


    
return 0;
}




緋背 2010-08-12 14:33 鍙戣〃璇勮
]]>
KMP 婕旂ず紼嬪簭http://www.shnenglu.com/varg-vikernes/archive/2010/04/29/113948.html緋背緋背Thu, 29 Apr 2010 04:48:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2010/04/29/113948.htmlhttp://www.shnenglu.com/varg-vikernes/comments/113948.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2010/04/29/113948.html#Feedback0http://www.shnenglu.com/varg-vikernes/comments/commentRss/113948.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/113948.html涓鐩存病鏈夌湡姝g悊瑙h繖涓畻娉曪紝鏄ㄥぉ鐪嬩簡涓嬬畻娉曞璁恒傛墠鎳備簡銆?br>紜疄鏄竴涓浉褰撶簿杈燂紝鐩稿綋宸у鐨勭畻娉曘傚お鐗涢間簡錛?br>
#include <stdio.h>
#include <string.h>

#define MAX_LEN 256

int tbl[MAX_LEN];
char *str = "abbbbbbb";
char *ptn = "bb";
char spc[MAX_LEN];

int main()
{
    int i, j;

    memset(spc, ' ', sizeof(spc));

    tbl[0] = 0;
    for (i = 1; ptn[i]; i++) {
        for (j = tbl[i - 1]; j && ptn[j] != ptn[i]; j = tbl[j]);
        if (ptn[j] == ptn[i])
            j++;
        tbl[i] = j;
    }
    printf("table:\n");
    for (i = 0; ptn[i]; i++) 
        printf("  %c", ptn[i]);
    printf("\n");
    for (i = 0; ptn[i]; i++)
        printf("%3d", tbl[i]);
    printf("\n");

    j = 0;
    for (i = 0; str[i]; ) {
        printf("\nmatching #%d\n", i);
        printf("%s\n", str);
        fwrite(spc, 1, i - j, stdout);
        printf("%s\n", ptn);
        fwrite(spc, 1, i, stdout);
        printf("^\n");
    
        if (str[i] == ptn[j]) {
            i++;
            j++;
            printf("ok\n");
        } else {
            if (j) 
                j = tbl[j - 1];
            else
                i++;
            printf("jumped to %d\n", j);
        }
        if (!ptn[j])
            printf("matched at %d\n", i);
    }

    return 0;
}



杈撳嚭錛?br>table:
  b  b
  0  1

matching #0
abbbbbbb
bb
^
jumped to 0

matching #1
abbbbbbb
 bb
 ^
ok

matching #2
abbbbbbb
 bb
  ^
ok
matched at 3

matching #3
abbbbbbb
 bb
   ^
jumped to 1

matching #3
abbbbbbb
  bb
   ^
ok
matched at 4

matching #4
abbbbbbb
  bb
    ^
jumped to 1

matching #4
abbbbbbb
   bb
    ^
ok
matched at 5

matching #5
abbbbbbb
   bb
     ^
jumped to 1

matching #5
abbbbbbb
    bb
     ^
ok
matched at 6

matching #6
abbbbbbb
    bb
      ^
jumped to 1

matching #6
abbbbbbb
     bb
      ^
ok
matched at 7

matching #7
abbbbbbb
     bb
       ^
jumped to 1

matching #7
abbbbbbb
      bb
       ^
ok
matched at 8



緋背 2010-04-29 12:48 鍙戣〃璇勮
]]>
[杞琞LCA闂錛堝惈RMQ鐨凷T綆楁硶錛?http://www.shnenglu.com/varg-vikernes/archive/2010/03/10/109355.html緋背緋背Wed, 10 Mar 2010 06:14:00 GMThttp://www.shnenglu.com/varg-vikernes/archive/2010/03/10/109355.htmlhttp://www.shnenglu.com/varg-vikernes/comments/109355.htmlhttp://www.shnenglu.com/varg-vikernes/archive/2010/03/10/109355.html#Feedback1http://www.shnenglu.com/varg-vikernes/comments/commentRss/109355.htmlhttp://www.shnenglu.com/varg-vikernes/services/trackbacks/109355.htmlhttp://www.shnenglu.com/Icyflame/

涓銆佸畾涔変笌瀹氱悊
      LCA錛歀east Common Ancestors錛堟渶榪戝叕鍏辯鍏堬級錛屽浜庝竴媯墊湁鏍規爲T鐨勪換鎰忎袱涓妭鐐箄錛寁錛屾眰鍑篖CA(T, u, v)錛屽嵆紱昏窡鏈榪滅殑鑺傜偣x錛屼嬌寰梮鍚屾椂鏄痷鍜寁鐨勭鍏堛?br>      鍦ㄧ嚎綆楁硶錛氱敤姣旇緝闀跨殑鏃墮棿鍋氶澶勭悊錛屼絾鏄瓑淇℃伅鍏呰凍浠ュ悗姣忔鍥炵瓟璇㈤棶鍙渶瑕佺敤姣旇緝灝戠殑鏃墮棿銆?br>      紱葷嚎綆楁硶錛氬厛鎶婃墍鏈夌殑璇㈤棶璇誨叆錛岀劧鍚庝竴璧鋒妸鎵鏈夎闂洖絳斿畬鎴愩?br>      RMQ錛氱粰鍑轟竴涓暟緇凙錛屽洖絳旇闂甊MQ(A, i, j)錛屽嵆A[i...j]涔嬮棿鐨勬渶鍊肩殑涓嬫爣銆?br>浜屻丏FS+RMQ
      1錛塖parse Table錛圫T錛夌畻娉?br>      鎻忚堪錛?/strong>

 1 //鍒濆鍖?/span>
 2 INIT_RMQ
 3 //max[i][j]涓瓨鐨勬槸閲峧寮濮嬬殑i涓暟鎹腑鐨勬渶澶у鹼紝鏈灝忓肩被浼鹼紝num涓瓨鏈夋暟緇勭殑鍊?/span>
 4     for i : 1 to n
 5         max[0][i] = num[i]
 6     for i : 1 to log(n)/log(2)
 7         for j : 1 to n
 8             max[i][j] = MAX(max[i-1][j], max[i-1][j+2^(i-1)]
 9 //鏌ヨ
10 RMQ(i, j)
11     k = log(j-i+1/ log(2)
12     return MAX(max[k][i], max[k][j-2^k+1])

      鍒嗘瀽錛?/strong>鍒濆鍖栬繃紼嬪疄闄呬笂鏄竴涓姩鎬佽鍒掔殑鎬濇兂銆傛槗鐭ワ紝鍒濆鍖栬繃紼嬫晥鐜囨槸O(nlogn)錛岃屾煡璇㈣繃紼嬫晥鐜囨槸O(1)銆係T鏄竴涓湪綰跨畻娉曘?br>      紺轟緥錛?/strong>POJ 3368 瑙i鎶ュ憡
      2錛夋眰瑙CA闂
      鎻忚堪錛?/strong>
      錛?錛塂FS錛氫粠鏍慣鐨勬牴寮濮嬶紝榪涜娣卞害浼樺厛閬嶅巻錛屽茍璁板綍涓嬫瘡嬈″埌杈劇殑欏剁偣銆傜涓涓殑緇撶偣鏄痳oot(T)錛屾瘡緇忚繃涓鏉¤竟閮借褰曞畠鐨勭鐐廣傜敱浜庢瘡鏉¤竟鎭板ソ緇忚繃2嬈★紝鍥犳涓鍏辮褰曚簡2n-1涓粨鐐癸紝鐢‥[1, ... , 2n-1]鏉ヨ〃紺恒?br>      錛?錛夎綆桼錛氱敤R[i]琛ㄧずE鏁扮粍涓涓涓間負i鐨勫厓绱犱笅鏍囷紝鍗沖鏋淩[u] < R[v]鏃訛紝DFS璁塊棶鐨勯『搴忔槸E[R[u], R[u]+1, ..., R[v]]銆傝櫧鐒跺叾涓寘鍚玼鐨勫悗浠o紝浣嗘繁搴︽渶灝忕殑榪樻槸u涓巚鐨勫叕鍏辯鍏堛?br>      錛?錛塕MQ錛氬綋R[u] ≥ R[v]鏃訛紝LCA[T, u, v] = RMQ(L, R[v], R[u])錛涘惁鍒橪CA[T, u, v] = RMQ(L, R[u], R[v])錛岃綆桼MQ銆?br>      鐢變簬RMQ涓嬌鐢ㄧ殑ST綆楁硶鏄湪綰跨畻娉曪紝鎵浠ヨ繖涓畻娉曚篃鏄湪綰跨畻娉曘?br>      紺轟緥錛?/strong>ZOJ 3195 瑙i鎶ュ憡銆?br>涓夈乀arjan綆楁硶
      鎻忚堪錛?/strong>Tarjan綆楁硶鏄竴涓綰跨畻娉曪紝涔熷氨鏄鍙湁鍏堣幏寰楁墍鏈夌殑鏌ヨ錛屽啀鎸変竴涓壒瀹氱殑欏哄簭榪涜榪愮畻銆?/span>

 1 //parent涓哄茍鏌ラ泦錛孎IND涓哄茍鏌ラ泦鐨勬煡鎵炬搷浣?/span>
 2 Tarjan(u)
 3     visit[u] = true
 4     for each (u, v) in QUERY
 5         if visit[v]
 6             ans(u, v) = FIND(v)
 7     for each (u, v) in TREE    
 8         if !visit[v]
 9             Tarjan(v)
10             parent[v] = u
      紺轟緥錛?/strong>HDOJ 2586 瑙i鎶ュ憡銆?

緋背 2010-03-10 14:14 鍙戣〃璇勮
]]>
久久精品国产亚洲AV无码麻豆| 久久午夜羞羞影院免费观看| 一级女性全黄久久生活片免费| 中文字幕日本人妻久久久免费 | 久久久久久A亚洲欧洲AV冫| 久久亚洲国产精品123区| 无码日韩人妻精品久久蜜桃 | 久久精品国产亚洲AV忘忧草18| 性欧美大战久久久久久久久| 999久久久国产精品| 无码人妻久久一区二区三区免费| 久久er国产精品免费观看8| 亚洲伊人久久大香线蕉综合图片| segui久久国产精品| 久久精品国产亚洲av高清漫画| 久久精品国产福利国产琪琪| 国产产无码乱码精品久久鸭| 伊人色综合九久久天天蜜桃| 99久久免费只有精品国产| 久久综合精品国产二区无码| 亚洲国产成人久久笫一页| 久久99国产精品久久99| 亚洲国产精品无码久久SM| 久久久精品波多野结衣| 国产精品久久久久久福利69堂| 久久婷婷是五月综合色狠狠| 久久99精品免费一区二区| 国产精品久久波多野结衣| 奇米综合四色77777久久| 久久综合久久美利坚合众国| 久久天天躁狠狠躁夜夜不卡| 午夜精品久久久久久99热| 精品国产青草久久久久福利| 精品国产乱码久久久久久1区2区 | 久久99久久成人免费播放| 久久精品国产亚洲AV电影| 亚洲综合伊人久久综合| 97精品伊人久久久大香线蕉| 精品伊人久久大线蕉色首页| 一个色综合久久| 国产亚洲精品久久久久秋霞|