http://poj.org/problem?id=1321 題意是給你一個(gè)n * n的矩陣,上面有若干塊是可以放置棋子的,問(wèn)你擺放k個(gè)棋子的所有可能性。這里用DFS求解,從...
http://poj.org/problem?id=1321 題意是給你一個(gè)n * n的矩陣,上面有若干塊是可以放置棋子的,問(wèn)你擺放k個(gè)棋子的所有可能性。這里用DFS求解,從...
http://acm.hdu.edu.cn/showproblem.php?pid=2066 題意:最短路問(wèn)題,有多個(gè)源頭和多個(gè)去向。解法是把全部的源點(diǎn)壓縮成一個(gè)點(diǎn),再跑最短...
http://acm.hdu.edu.cn/showproblem.php?pid=3790 題意:給你n個(gè)點(diǎn),m條無(wú)向邊,每條邊都有長(zhǎng)度d和花費(fèi)p,給你起點(diǎn)s終點(diǎn)t,要求輸...
Floyd-Warshall算法使用DP方法來(lái)求解任意兩點(diǎn)間的最短路問(wèn)題。i到j(luò)的最短路分正好經(jīng)過(guò)頂點(diǎn)k一次和完全不經(jīng)過(guò)頂點(diǎn)k兩種情況來(lái)討論。不斷的進(jìn)行d[i][j] = m...
概述 一個(gè)算法是由控制結(jié)構(gòu)(順序,分支,循環(huán))和原操作(指固有數(shù)據(jù)類型的操作)構(gòu)成。為了便于比較同一問(wèn)題的不同算法,通常的做法是,從算法中選取一種對(duì)所研究的問(wèn)題來(lái)說(shuō)是基本操作...
Bellman-Ford算法中的松弛操作必定只會(huì)發(fā)生在最短路徑前導(dǎo)節(jié)點(diǎn)松弛成功過(guò)的節(jié)點(diǎn)上,用一個(gè)隊(duì)列記錄松弛過(guò)的節(jié)點(diǎn),可以避免了冗余計(jì)算。復(fù)雜度可以降低到O(kE),k是個(gè)比...
使用C++ STL的next_permutation函數(shù)可以簡(jiǎn)單的枚舉出一個(gè)升序排列的字符串的全排列,它包含在頭文件 里。 用C類型字符串舉一個(gè)例子: 另外,prev_per...
算法描述 Dijkstra算法是通過(guò)為每個(gè)頂點(diǎn) v 保留目前為止所找到的從s到v的最短路徑來(lái)工作的。初始時(shí),原點(diǎn) s 的路徑權(quán)重被賦為 0 (d[s] = 0)。若對(duì)于頂點(diǎn) ...
Bellman - Ford算法是求含 負(fù)權(quán)圖 的單源最短路徑算法,效率很低,但代碼很容易寫。其原理為持續(xù)地進(jìn)行松弛(原文是這么寫的,為什么要叫松弛,爭(zhēng)議很大),在每次松弛時(shí)...
http://codeforces.com/problemset/problem/96/A 生詞:沒(méi)有 題面:太水,不想說(shuō)。
http://codeforces.com/problemset/problem/282/A 生詞: peculiar a.奇怪的execute vt.處決,使生效 題面:...
http://codeforces.com/problemset/problem/231/A 生詞: implement vt.使貫徹,使執(zhí)行 題面: 太水,不想說(shuō)。